Foros del Web » Programando para Internet » PHP »

Warning con mysql_fetch_array

Estas en el tema de Warning con mysql_fetch_array en el foro de PHP en Foros del Web. Hola chicos, tengo el siguiente código: Código PHP: $sql  =  "SELECT dni FROM clientes WHERE dni='$dni'" ;   $result  =  mysql_query ( $sql );                     if( mysql_fetch_array ( $result ))                     { ...
  #1 (permalink)  
Antiguo 19/05/2011, 08:15
 
Fecha de Ingreso: mayo-2011
Mensajes: 29
Antigüedad: 12 años, 11 meses
Puntos: 0
Warning con mysql_fetch_array

Hola chicos,

tengo el siguiente código:

Código PHP:
$sql "SELECT dni FROM clientes WHERE dni='$dni'";
 
$result mysql_query($sql);
                    if(
mysql_fetch_array($result))
                    {
                    echo 
"Error, dni ya registrado por otro usuario";
                    echo 
"<input type='button' value='Atras' onClick='history.go(-1);'>";
                    
$_POST['error']=0;
                    } 
Y me tira el siguiente warning:
Warning: mysql_num_rows() expects parameter 1 to be resource, string given in C:\wamp\www\tienda\logica_datos\existe_cliente.php on line 13
Siendo la linea 13, la línea del if.

¿Qué narices es? Ya no sé que le pasa
  #2 (permalink)  
Antiguo 19/05/2011, 08:41
Avatar de rikardoz  
Fecha de Ingreso: abril-2011
Ubicación: En mi casa
Mensajes: 165
Antigüedad: 13 años
Puntos: 46
Respuesta: Warning con mysql_fetch_array

$sql = "SELECT dni FROM clientes WHERE dni='$dni'";
$result = mysql_fetch_assoc(mysql_query($sql));
$dni = $result['dni'];
if($dni)
{
echo "Error, dni ya registrado por otro usuario";
echo "<input type='button' value='Atras' onClick='history.go(-1);'>";
$_POST['error']=0;
}
__________________
Agregadecer no cuesta nada O SI?
  #3 (permalink)  
Antiguo 19/05/2011, 08:47
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Warning con mysql_fetch_array

Cita:
Iniciado por freezeblood Ver Mensaje
Hola chicos,

tengo el siguiente código:

Código PHP:
$sql "SELECT dni FROM clientes WHERE dni='$dni'";
 
$result mysql_query($sql);
                    if(
mysql_fetch_array($result))
                    {
                    echo 
"Error, dni ya registrado por otro usuario";
                    echo 
"<input type='button' value='Atras' onClick='history.go(-1);'>";
                    
$_POST['error']=0;
                    } 
Y me tira el siguiente warning:
Warning: mysql_num_rows() expects parameter 1 to be resource, string given in C:\wamp\www\tienda\logica_datos\existe_cliente.php on line 13
Siendo la linea 13, la línea del if.

¿Qué narices es? Ya no sé que le pasa
Pues es extraño que en ninguna parte del código que muestras está la función mysql_num_rows()
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #4 (permalink)  
Antiguo 19/05/2011, 13:20
 
Fecha de Ingreso: mayo-2011
Mensajes: 29
Antigüedad: 12 años, 11 meses
Puntos: 0
Respuesta: Warning con mysql_fetch_array

Gracias a ambos.

Fue un error de copiar y pegar pues probé sin con mysql_num_rows() no me salía el error pero me salía. Voy a probar el código del ricardo a ver qué tal.
  #5 (permalink)  
Antiguo 19/05/2011, 13:24
 
Fecha de Ingreso: mayo-2011
Mensajes: 29
Antigüedad: 12 años, 11 meses
Puntos: 0
Respuesta: Warning con mysql_fetch_array

Da otro error similar:
Warning: mysql_fetch_assoc() expects parameter 1 to be resource, boolean given in C:\wamp\www\tienda\logica_datos\existe_cliente.php on line 22
  #6 (permalink)  
Antiguo 19/05/2011, 13:51
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Warning con mysql_fetch_array

¿Y si depuras tu consulta?
Código PHP:
$result mysql_fetch_assoc(mysql_query($sql) or die("Error en ($sql):".mysql_error())); 
Sería mejor que seguir adivinando.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #7 (permalink)  
Antiguo 19/05/2011, 14:25
 
Fecha de Ingreso: mayo-2011
Mensajes: 29
Antigüedad: 12 años, 11 meses
Puntos: 0
Respuesta: Warning con mysql_fetch_array

He hecho la siguiente depuración:

Código PHP:
mysql_query("SELECT dni FROM clientes WHERE cifnif=$dni") or die(mysql_error()); 
El error es:
Unknown column 'dni' in 'field list'

Hay una línea, más arriba, que dice:
Código PHP:
$dni=$_POST['dni']; 
Ya sé donde está el error:
Select cifnif FROM ...
Me equivoqué al consultar la columna!
Gracias
  #8 (permalink)  
Antiguo 19/05/2011, 14:37
 
Fecha de Ingreso: mayo-2011
Mensajes: 29
Antigüedad: 12 años, 11 meses
Puntos: 0
Respuesta: Warning con mysql_fetch_array

No, no sólo ahí estaba el error.

Mi código es:

Código PHP:
<?php

if(!isset($_SESSION)) 

session_start(); 

//Conectar a  la base de datos
$dbmysql_connect("localhost""root""") or die ("Error al Conectar"); 
mysql_select_db("cookie") or die ("Verifique la Base de Datos"); 

$dni=$_POST['dni'];
// Depuracion
mysql_query("SELECT cifnif FROM clientes WHERE cifnif='$dni'") or die(mysql_error());
 
$sql "SELECT cifnif FROM clientes WHERE cifnif='$dni'";
 
$result mysql_query($sql);
                    if(
mysql_fetch_array($result))
                    {
                    echo 
"Error, dni ya registrado por otro usuario";
                    echo 
"<input type='button' value='Atras' onClick='history.go(-1);'>";
                    
$_POST['error']=0;
                    }
mysql_close($db);
?>
Error:
Si no encuentra a un usuario con ese dni, no hay warning.
Si encuentra a un usuario con ese dni:
Cita:
Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\wamp\www\tienda\logica_datos\existe_cliente.php on line 15
Gracias,,,

Solucionado:

Se modifica esta linea:
Cita:
if($row=mysql_fetch_array($result))
Joe, que errores más...

Etiquetas: warning
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 07:37.