Foros del Web » Programando para Internet » PHP »

PHP OO Problema con error: mysql_fetch_object():

Estas en el tema de Problema con error: mysql_fetch_object(): en el foro de PHP en Foros del Web. Amigos tengo un problema con este codigo. Saludos!, ojala alguien me pueda ayudar. Me aparecen 2 errores: 1.- Notice: Undefined variable: rsBusqueda in C:\wamp\www\COLEEGIO_BD2\FrmAlumno.php on ...
  #1 (permalink)  
Antiguo 20/05/2014, 09:12
 
Fecha de Ingreso: mayo-2014
Mensajes: 1
Antigüedad: 9 años, 11 meses
Puntos: 0
Problema con error: mysql_fetch_object():

Amigos tengo un problema con este codigo.
Saludos!, ojala alguien me pueda ayudar.
Me aparecen 2 errores:

1.- Notice: Undefined variable: rsBusqueda in C:\wamp\www\COLEEGIO_BD2\FrmAlumno.php on line 253
2.- Warning: mysql_fetch_object() expects parameter 2 to be string, resource given in C:\wamp\www\COLEEGIO_BD2\FrmAlumno.php on line 253.


Esta es la parte del codigo que me indica el error:


<?php
$var="";
$var1="";
$var2="";
$var3="";
$var4="";
$var5="";
$var6="";
?>

if(isset($_POST["btnBuscar"])){
$txt = $_POST["txtBuscar"];

$sql = "SELECT * FROM alumnos WHERE Cod_Alu LIKE '%$txt%'or Alu_nom LIKE '%$txt%' or Alu_tel LIKE '%$txt%' or Alu_ape LIKE '%$txt%' or Alu_sex LIKE '%$txt%' or Alu_obs LIKE '%$txt%'";

$rsBusqueda = mysql_query($sql);
}

?>

<td><input type="text" name="txtBuscar"/></td>
<td><input type="submit" name="btnBuscar" value="Buscar" /></td>


<?php
while($rw=mysql_fetch_object($rsBusqueda,$cn)){
?>

<tr>
<td><?php echo $rw->Cod_Alu; ?></td>
<td><?php echo $rw->Alu_nom; ?></td>
<td><?php echo $rw->Alu_ape; ?></td>
<td><?php echo $rw->Alu_tel; ?></td>
<td><?php echo $rw->Alu_ser; ?></td>
<td><?php echo $rw->Alu_sex; ?></td>
<td><?php echo $rw->Alu_obs; ?></td>
</tr>
<?php
}
?>
  #2 (permalink)  
Antiguo 20/05/2014, 09:28
Avatar de Italico76  
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años
Puntos: 292
Respuesta: Problema con error: mysql_fetch_object():

Primera falla, el while() debe estar dentro del if (isset(...))
__________________
Salu2!
  #3 (permalink)  
Antiguo 20/05/2014, 09:31
Avatar de hhs
hhs
Colaborador
 
Fecha de Ingreso: junio-2013
Ubicación: México
Mensajes: 2.995
Antigüedad: 10 años, 9 meses
Puntos: 379
Respuesta: Problema con error: mysql_fetch_object():

El primer mensaje te esta diciendo que la variable no esta definida previamente.
El segundo es por que estas usando mal la función mysql_fetch_object revisa el manual: http://us2.php.net/manual/es/functio...tch-object.php
Por ultimo la extensión mysql es obsoleta asi que procura migrar al uso de MySQLi
__________________
Saludos
About me
Laraveles
A class should have only one reason to change.
  #4 (permalink)  
Antiguo 20/05/2014, 09:32
Avatar de Italico76  
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años
Puntos: 292
Respuesta: Problema con error: mysql_fetch_object():

- Segunda falla, mysql_fetch_object() esta mal utilizada, te sobra ese segundo parametro que si lo usas es el nombre de una clase y no un recurso

Es opciona pasarle el nombre de la clase porque sino crea dinamicamente un objeto (tipo stdClass) y le asigna como propiedades publicas los campos recuperados de la bade de datos, pero si quieres seria asi:

Código PHP:
Ver original
  1. // En algun momento defines esto:
  2. class mi_prototipo {
  3.     // Aca algunos metodos por ejemplo
  4. }

Código PHP:
Ver original
  1. if(isset($_POST["btnBuscar"])){
  2.     $txt = $_POST["txtBuscar"];
  3.  
  4.     $sql = "SELECT * FROM alumnos WHERE Cod_Alu LIKE '%$txt%'or Alu_nom LIKE '%$txt%' or Alu_tel LIKE '%$txt%' or Alu_ape LIKE '%$txt%' or Alu_sex LIKE '%$txt%' or Alu_obs LIKE '%$txt%'";
  5.  
  6.     $rsBusqueda = mysql_query($sql);
  7.  
  8.     while($rw=mysql_fetch_object($rsBusqueda,'mi_prototipo')){
  9.          // ..
  10.     }

La "primera falla" se debe a que $rsBusqueda se define dentro del IF pero solo si se cumple obviamente la condicion y como no se te esta cumpliendo deberias no tratar de recuperar nada con mysql_fetch_object()
__________________
Salu2!

Última edición por Italico76; 20/05/2014 a las 09:44

Etiquetas: mysql, select, sql, variable
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 21:52.