Foros del Web » Programando para Internet » PHP »

AYUDA CON mysql_num_rows():

Estas en el tema de AYUDA CON mysql_num_rows(): en el foro de PHP en Foros del Web. ALGUIEN SABE A QUE SE DEBA ESTO... ANTES DE ESTO NO ME RECIBIA LAS VARIABLES POR EL POST $VARIABLE SI NO ME RECIBIA $_POST_('VARIABLE') ASI ...
  #1 (permalink)  
Antiguo 15/12/2003, 17:26
Avatar de amarengo  
Fecha de Ingreso: julio-2001
Mensajes: 26
Antigüedad: 22 años, 9 meses
Puntos: 0
AYUDA CON mysql_num_rows():

ALGUIEN SABE A QUE SE DEBA ESTO...

ANTES DE ESTO NO ME RECIBIA LAS VARIABLES POR EL POST
$VARIABLE SI NO ME RECIBIA $_POST_('VARIABLE')

ASI QUE TUVE QUE USAR TODAS LAS VARIALBLES CON $_POST

INCLUSIVE LE CAMBIER EL GLOBAR_RE... =On pero seguia sin poder usar $variable solo me funcionaba el $_POST('VARIABLE')

Y AHORA ME SALE ESTE ERROR

Warning: mysql_num_rows(): supplied argument is not a valid
MySQL result resource
  #2 (permalink)  
Antiguo 15/12/2003, 17:47
Avatar de Hollman  
Fecha de Ingreso: enero-2003
Ubicación: Bogotá - Colombia
Mensajes: 202
Antigüedad: 21 años, 2 meses
Puntos: 1
colocate algo del codigo para ubicarnos mejor.....
  #3 (permalink)  
Antiguo 15/12/2003, 17:55
Avatar de amarengo  
Fecha de Ingreso: julio-2001
Mensajes: 26
Antigüedad: 22 años, 9 meses
Puntos: 0
/*
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in F:\Apache2\htdocs\faua\control.php on line 38

Warning: Cannot modify header information - headers already sent by (output started at F:\Apache2\htdocs\faua\control.php:1) in F:\Apache2\htdocs\faua\control.php on line 456

Warning: mysql_free_result(): supplied argument is not a valid MySQL result resource in F:\Apache2\htdocs\faua\control.php on line 458
*/
<?
require("config.php");

//vemos si el usuario y contraseña es váildo
$conn = mysql_connect("$sql_host","$sql_usuario","$sql_pas s");
//selecciono la BBDD
mysql_select_db("$sql_db",$conn);

$valor = '1';
$user = $_POST['usuario'];
$pass = $_POST['contrasena'];

//Sentencia SQL para buscar un usuario con esos datos
$ssql = "SELECT * FROM $sql_tabla WHERE cod = $user and password = $pass";
$ssql1 = "SELECT * FROM $sql_tabla WHERE cod= $user and password = $pass and registrado='$valor' ";
$bifur = "SELECT tipo,cod FROM $sql_tabla WHERE cod=$user and tipo='PROFESOR' ";


//Ejecuto la sentencia
$rs = mysql_query($ssql,$conn);
$rs1 = mysql_query($ssql1,$conn);
$rbifur = mysql_query($bifur,$conn);


$sql = "select * from $sql_tabla2 where cod=$user " ;

$rsx0 = mysql_query($sql,$conn);
$rsx1 = mysql_query($sql,$conn);
$rsx2 = mysql_query($sql,$conn);
$rsx3 = mysql_query($sql,$conn);




//vemos si el usuario y contraseña es váildo
//si la ejecución de la sentencia SQL nos da algún resultado
//es que si que existe esa conbinación usuario/contraseña
/*AQUI EL ERROR LIN 58 HELP ME*/if (mysql_num_rows($rs)!=0){


if (mysql_num_rows($rs1)!=0) {
//usuario y contraseña válidos
//defino una sesion y guardo datos
session_start();
session_register("autentificado");
$autentificado = "SI";

if (mysql_num_rows($rbifur)!=0) {

header ("Location: aplicacionprofe.php");

}
else {
header ("Location: aplicacion.php");

}


}else {
echo"<html>

<head>

<title>REGISTRO DE DATOS</title>
<LINK href=img/default.css type=text/css rel=stylesheet>
<link href=img/intra1.css rel=stylesheet type=text/css>
</head>

<body>

<form method=POST action=registrar.php>

<div align='center'>
<table cellSpacing='0' cellPadding='0' width='600' border='0'>
<tbody>
<tr>
<td vAlign='top' align='left'><center>
<table height='404'>
<tr>
<td height='400'></td>
<td height='400'></td>
<!-- Fin de encabezado -->
<td height='400'>
<div align='center'>
<table style='FONT-SIZE: 10px; FONT-FAMILY: Arial' height='316' cellSpacing='1' width='610' border='0'>
<!--Inicio del formulario -->
<tbody>
<tr>
<td width='5' height='29'>&nbsp;</td>
<td width='579' height='29'>
<table style='FONT-SIZE: 10px; FONT-FAMILY: Arial' cellSpacing='1' width='693' border='0'>
<tbody>
<tr>
<td width='696'><embed src='flash/intranet.swf' width='709' height='60' bgcolor='#FFFFFF'>&nbsp;</td>
</tr>
<tr>
<td width='696'><font face='Arial'>IMPORTANTE:
Los datos marcados con<img height='9' src='img/asterisco.gif' width='10' border='0'>
son indispensables</font></td>
</tr>
</tbody>
</table>
</td>
<td width='6' height='29'>&nbsp;</td>
</tr>
<tr>
<td width='5' height='62'>&nbsp;</td>
<td width='579' height='62'>
<table style='FONT-SIZE: 11px; FONT-FAMILY: Arial; border-collapse:collapse' cellSpacing='0' cellPadding='0' width='710' border='0' bordercolor='#111111'>
<tbody>
<tr>
<td align='right' width='100%' height='491'>
<table align='center' cellSpacing='1' cellPadding='1' width='714' border='0' height='511'>
<tbody>
<tr>
<td width='706' bgColor='#004600' colSpan='4' height='16'><font face='Arial' size='2' color='#FFFFFF'><b>*
Datos personales:</b></font></td>
</tr>
<tr>
<td class='TxtAzulOsc05' width='350' height='18' colspan='2'></td>
<td class='TxtAzulOsc05' width='350' height='18' colspan='2'></td>
</tr>

/* <EL RESTO DEL HTML> */
";
}
}else {
header("Location: index.php?errorusuario=si");
}
mysql_free_result($rs);
mysql_close($conn);


/*



if ($_POST["usuario"]=="miguel" && $_POST["contrasena"]=="qwerty"){
//usuario y contraseña válidos
//defino una sesion y guardo datos
session_start();
$_SESSION["autentificado"]= "SI";
header ("Location: aplicacion.php");
}else {
//si no existe le mando otra vez a la portada
header("Location: index.php?errorusuario=si");
}
*/
?>
  #4 (permalink)  
Antiguo 16/12/2003, 06:29
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Si haces un cambio en el php.ini .. debes reiniciar tu servidor HTTP que uses junto con PHP .. sino, los cambios no tienen efecto.

Ademas .. fijate bien que "php.ini" modificastes. El que manda y debes modificar es el que indique el phpinfo() en su primer bloque de información .. a su vez, ahí mismo puedes ver si el cambio que hagas tras reiniciar tu servidor HTTP tiene efecto.

-----
Mis preguntas:

Código PHP:
$sql "select * from $sql_tabla2 where cod=$user " ;

$rsx0 mysql_query($sql,$conn);
$rsx1 mysql_query($sql,$conn);
$rsx2 mysql_query($sql,$conn);
$rsx3 mysql_query($sql,$conn); 
¿para qué haces tantos query (consultas) de lo mismo? si con uno sobra.

Ademas .. usa estructuras tipo:
Código PHP:
$sql "select * from $sql_tabla2 where cod='$user'" ;

$rsx0 mysql_query($sql,$conn) or die (mysql_error()); 
Para que veas el error concreto de SQL que puedas tener.

A su vez .. en SQL de Mysql tienes la función COUNT() que te sirve para obtener el total de registros de esa consulta data .. mucho más optimo que usar mysql_num_rows() tal cual lo usas.

Un saludo,




Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:30.