SoloCodigo

Programación Web y Scripting => PHP => Mensaje iniciado por: Comodoro en Martes 13 de Julio de 2010, 16:40

Título: Problemillas con mysql_num_rows()?
Publicado por: Comodoro en Martes 13 de Julio de 2010, 16:40
Hola a todos/as escribo esta vez por lo siguiente tengo X Codigo cuando lo ejecuto en el Navegado me arroga este Error:

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in C:wampwwwPracticas_Php_MySQLPhp_1_Consulta.php on line 6

Este es el Codigo:
Código: PHP
  1.  
  2. include ('Conexion.php');
  3.  
  4. $consulta = " SELECT apellido FROM comentario WHERE nombre LIKE '%".$_POST['con']."%' ";
  5. $resultado = mysql_query($consulta, $con);
  6. $filas = mysql_num_rows($resultado);
  7. for ($i=0; $i < $filas; $i++){
  8.     $resultado_final = mysql_result($filas, $i, "apellido");
  9.     echo $resultado_final;
  10. }
  11.  
  12.  
He buscado en la Red, en otros Foros y señalan que el Error se debe a la Consulta Sql, la he revisado y me parece que esta Bien!

Esta es la Tabla:

Código: SQL
  1.  
  2. CREATE TABLE comentario (
  3.   id_datos_correo BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
  4.   nombre CHAR(45) NULL,
  5.   apellido CHAR(45) NULL,
  6.   correo VARCHAR(45) NULL,
  7.   comentario VARCHAR(90) NULL,
  8.   PRIMARY KEY(id_datos_correo)
  9. )
  10. TYPE=InnoDB;
  11.  
  12.  

Si me podrian señalar el Error, Please! Bueno eso es todo...
Título: Re: Problemillas con mysql_num_rows()?
Publicado por: F_Tanori en Miércoles 14 de Julio de 2010, 13:31
Claro el error esta en que no estas obteniendo el resultSet

Prueba de esta manera, mostrando la informacion util para depurar, (No lo comprobe, porque en esta maquina no tengo php, pero creo que debe andar :P )

Código: PHP
  1.  
  2. include ('Conexion.php');
  3.  
  4. $consulta = " SELECT apellido FROM comentario WHERE nombre LIKE '%".$_POST['con']."%' ";
  5. $resultado = mysql_query($consulta, $con);
  6.  
  7. if ($resultado) {
  8.      $filas = mysql_num_rows($resultado);
  9.           for ($i=0; $i < $filas; $i++){
  10.               $resultado_final = mysql_result($filas, $i, "apellido");
  11.               echo $resultado_final;
  12.           }
  13. }else{
  14.     # Debug
  15.     echo "<h1>Informacion de Debug</h1><hr><hr>";
  16.     echo "<h3>$consulta</h3>";
  17.     echo $consulta."<br />";
  18.     echo "<h3>$POST</h3>";
  19.     echo "<pre>";
  20.            print_r($_POST);
  21.     echo "</pre><hr>";
  22.     echo "<h3>$resultado</h3>";
  23.     echo "<pre>";
  24.      var_dump($resultado);
  25.     echo "</pre><hr>";
  26.     echo "<h3>MySQL Dice:</h3>";
  27.     echo "<pre>";
  28.       echo "=>".mysql_error();
  29.     echo "</pre><hr>";
  30.  }
  31.  
  32.  

Saludos
Título: Re: Problemillas con mysql_num_rows()?
Publicado por: Comodoro en Miércoles 14 de Julio de 2010, 16:58
Hola camarada F_Tanori ante todo Gracias por tu Respuesta, pude solucionar el Problemilla pero de otra forma, te explico lo que estaba haciendo era esto:

Código: PHP
  1.  
  2. $resultado_final = mysql_result($filas, $i, "apellido");
  3.  
  4.  

Y el argumento que le tenia que pasar no era la Variable $fila si no, la Variable Resultado ahora si funciona!

Código: PHP
  1.  
  2. $resultado_final = mysql_result($resultado, $i, "apellido");
  3.  
  4.