Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Error Call to a member function fetch_assoc()

Estas en el tema de Error Call to a member function fetch_assoc() en el foro de PHP en Foros del Web. Hola gente de la Comunidad de PHP este es mi primer tema y no lo haria si no pudiera solucionar el siguiente error del titulo ...
  #1 (permalink)  
Antiguo 19/11/2014, 15:00
crk
 
Fecha de Ingreso: noviembre-2014
Mensajes: 4
Antigüedad: 9 años, 5 meses
Puntos: 0
Error Call to a member function fetch_assoc()

Hola gente de la Comunidad de PHP este es mi primer tema y no lo haria si no pudiera solucionar el siguiente error del titulo del mensaje.

Estoy creando una aplicación para los examen de admisión que el postulante ponga su codigo de postulante y le aparesca si ingreso o no el problema surge cuando en el id del estudiante pongo numeros y letras me marca el error en cambio si pongo solo numeros la aplicacion si funciona correctamente y muestra los campos solicitados pongo el codigo.

P.D El campo del id en la base de datos es varchar 10

Código HTML:
<?php
	require('conexion.php');
	$id=$_POST['id'];
	$query="SELECT * FROM postulante WHERE idpostulante =$id";
	
	$resultado=$mysqli->query($query);
	
?>
<html>
	<head>
		<title>Resultados Del Examen de Admision</title>
	</head>
	 <link rel="stylesheet" href="css/bootstrap.css">
	 <style>
div{
padding-top: 150px;	
}

#mitabla{
background-color: #ffffff;
border-color: #000000;
text-align: center;
}
body{
  font: 13px/20px 'Lucida Grande', Tahoma, Verdana, sans-serif;
  color: #404040;
  background: #ccc;
  background-image: -webkit-radial-gradient(center, circle cover, #dddddd, #a7a7a7 80%);
  background-image: -moz-radial-gradient(center, circle cover, #dddddd, #a7a7a7 80%);
  background-image: -o-radial-gradient(center, circle cover, #dddddd, #a7a7a7 80%);
  background-image: radial-gradient(center, circle cover, #dddddd, #a7a7a7 80%);
}
.nombres{
background-color: #f6f6f6;
}


	 </style>
	<body>
		
		<div>
		<center><a class="btn btn-success" href="nuevo.php">Nuevo Postulante</a></center><br>		
		<center><table id="mitabla"border=1 width="80%">
			<thead>
				<tr class="nombres">
					<td><b>Codigo Postulante</b></td>
					<td><b>Nombres</b></td>
					<td><b>Apellidos</b></td>
					<td><b>DNI</b></td>
					<td><b>Carrera Profesional</b></td>
					<td><b>Foto</b></td>
					<td><b>Ingreso</b></td>
					<td><b>Modificar</b></td>
					<td><b>Eliminar</b></td>

				</tr>
				<tbody>
					<?php while($row=$resultado->fetch_assoc()){ ?>
						<tr>
							<td><?php echo $row['idpostulante'];?>
							</td>
							<td>
								<?php echo $row['nombre_postulante'];?>
							</td>
							<td>
								<?php echo $row['apellidos_postulante'];?>
							</td>
							<td>
								<?php echo $row['dni_postulante'];?>
							</td>
							<td>
								<?php echo $row['carrera_postulante'];?>
							</td>
							<td>
								<?php echo "<img width='70px' src= '".$row['imagen_postulante']."'>";?>
							</td>
							<td>
								<?php echo $row['estado_postulante'];?>
							</td>
							<td>
								<center><a class="btn btn-primary" href="modificar.php?id=<?php echo $row['idpostulante'];?>">Modificar</a></center>
							</td>
							<td>
								<center><a class="btn btn-danger" href="eliminar.php?id=<?php echo $row['idpostulante'];?>">Eliminar</a></center>
							</td>
						</tr>
					<?php } ?>
				</tbody>
			</table></center><br>
			<center><a class="btn btn-warning" href="index.html">Regresar</a></center>
			</div>
		</body>
	</html> 

Última edición por crk; 19/11/2014 a las 15:05 Razón: me olvide comentar el tipo de tabla
  #2 (permalink)  
Antiguo 19/11/2014, 15:09
Avatar de rocha7778  
Fecha de Ingreso: mayo-2013
Ubicación: Cartagena Colombia
Mensajes: 79
Antigüedad: 10 años, 11 meses
Puntos: 1
Respuesta: Error Call to a member function fetch_assoc()

ese error se debe a que no estas recuperando nada en la consulta que haces.
  #3 (permalink)  
Antiguo 19/11/2014, 15:12
crk
 
Fecha de Ingreso: noviembre-2014
Mensajes: 4
Antigüedad: 9 años, 5 meses
Puntos: 0
Respuesta: Error Call to a member function fetch_assoc()

Cita:
Iniciado por rocha7778 Ver Mensaje
ese error se debe a que no estas recuperando nada en la consulta que haces.
Gracias por responder pero como puedo solucionar que no me captura los datos
  #4 (permalink)  
Antiguo 19/11/2014, 15:16
Avatar de rocha7778  
Fecha de Ingreso: mayo-2013
Ubicación: Cartagena Colombia
Mensajes: 79
Antigüedad: 10 años, 11 meses
Puntos: 1
Respuesta: Error Call to a member function fetch_assoc()

prueba la consulta, es decir :

has un echo "SELECT * FROM postulante WHERE idpostulante =$id"; exit();

y copia y pega el string en tu gb, ejecuta la consulta y verifica que si este arrojando resultado.

de esta manera compruebas que si estas recibiendo la variable desde el formulario y la estas guardando en $id.
  #5 (permalink)  
Antiguo 19/11/2014, 15:18
 
Fecha de Ingreso: febrero-2013
Ubicación: Cali Colombia
Mensajes: 118
Antigüedad: 11 años, 1 mes
Puntos: 0
Respuesta: Error Call to a member function fetch_assoc()

Observa con este codigo como se debe de hacer

Código PHP:
Ver original
  1. public function consulta_pais(){
  2.         if($this->connect()){
  3.             $query = "SELECT Pais_cod,Pais_nomb FROM Pais";
  4.             $result = $this->mysqli->query($query);
  5.             while($row = $result->fetch_object()){
  6.                 $array = array("codigo"=>$row->Pais_cod,
  7.                                 "nombre"=>$row->Pais_nomb);
  8.                 $array_dos[] = $array;
  9.             }
  10.             return $array_dos;
  11.         }  
  12.             $this->mysqli->free_result($result);
  13.     }
$this->connect() me llama a una clase padre que activa el mysqli(host,db........ ) no le prestes atencion a esta parte, abajo esta la respuesta..

Saludos, espero que con esto soluciones el problema..
  #6 (permalink)  
Antiguo 19/11/2014, 15:33
crk
 
Fecha de Ingreso: noviembre-2014
Mensajes: 4
Antigüedad: 9 años, 5 meses
Puntos: 0
Respuesta: Error Call to a member function fetch_assoc()

@andres18281
Código PHP:
Ver original
  1. $this->mysqli->free_result($result);
lo he remplazado en la siguiente parte de mi codigo

Código PHP:
Ver original
  1. $resultado=$mysqli->query($query);

y me marca T_OBJECT_OPERATOR o donde debo colocarlo.

@rocha7778 si envia la informacion porque cuando el id del postulante son solo numeros si se me genera la tabla con los datos solicitados
  #7 (permalink)  
Antiguo 19/11/2014, 15:54
crk
 
Fecha de Ingreso: noviembre-2014
Mensajes: 4
Antigüedad: 9 años, 5 meses
Puntos: 0
Respuesta: Error Call to a member function fetch_assoc()

Ya lo solucione me faltaba poner comilla simples en la parte que hago la consulta
gracias por su ayuda
antes

Código PHP:
Ver original
  1. $query="SELECT * FROM postulante WHERE idpostulante =$id";

ahora

Código PHP:
Ver original
  1. $query="SELECT * FROM postulante WHERE idpostulante ='$id'";

Etiquetas: errores
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 14:48.