Foro de programación en PHP
problema con un codigo
| Autor: goodmanalex Publicado: 16-9-2010 09:31 AM |
|
|
a ver cuando abro la pagina me sale el siguiente mensaje de error: Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:wampwwwalejandromartinezlistado-partes.php on line 102 el codigo es este: [php] <?php //creamos la conexión $conexion = mysql_connect('localhost', 'root', ''); //Conexión base de datos mysql_select_db('mantenimiento', $conexion); //Crea la consulta $consulta = "SELECT prioridad, id_tecnico, id_cliente, fecha_ini, fecha_fin, caracteristicas, modelo_equipo, num_serie, motivo_asistencia, descripcion_intervencion, observaciones, num_partes FROM partes"; //Almacenar $almacena = mysql_query($consulta, $conexion); //mostrar while ($cosa = mysql_fetch_array($almacena)){ $consulta2 = "SELECT * FROM tecnicos WHERE id=".$cosa['id_tecnico']; $almacena2 = mysql_query($consulta2, $conexion); $tecnico= mysql_fetch_array($almacena2); $consulta3 = "SELECT * FROM clientes WHERE id=".$cosa['id_cliente']; $almacena3 = mysql_query($consulta3, $conexion); $cliente= mysql_fetch_array($almacena3); echo "<tr>"; echo "<td align='center'>"; echo $cosa['num_partes']; echo "</td>"; echo "<td align='center'>"; echo $cosa['prioridad']; echo "</td>"; echo "<td align='center'>"; echo $tecnico['nombre']; echo "<td align='center'>"; echo $cliente['nombre']; echo "</td>"; echo "<td align='center'>"; echo $cosa['fecha_ini']; echo "</td>"; echo "<td align='center'>"; echo $cosa['fecha_fin']; echo "</td>"; echo "<td align='center'>"; echo $cosa['caracteristicas']; echo "</td>"; echo "<td align='center'>"; echo $cosa['modelo_equipo']; echo "</td>"; echo "<td align='center'>"; echo $cosa['num_serie']; echo "</td>"; echo "<td align='center'>"; echo $cosa['motivo_asistencia']; echo "</td>"; echo "<td align='center'>"; echo $cosa['descripcion_intervencion']; echo "</td>"; echo "<td align='center'>"; echo $cosa['observaciones']; echo "</td>"; echo "<td align='center'>"; echo $cosa['num_partes']; echo "</td>"; echo "<td align='center'>"; echo "<a href='partesedid1.php?partes=".$cosa['num_partes']."'><img src='imagenes/editar.png' border='0'></a>"; echo "<a href='partesbor.php?partes=".$cosa['num_partes']."'><img src='imagenes/borrar.png' border='0'></a>"; echo "</td>"; echo "</tr>"; } ?> [/php] |
|
| Autor: Anonimo Publicado: 27-10-2010 01:34 PM |
|
| Te salta una advertencia porque ¿que pasaría si no encuentra resultados al realizar la primera consulta? Seguramente esa variable ni se crea o es null por tanto realiza las siguientes consultas para nada. "Fallaría" la línea while($cosa = mysql_fetch_array($almacena)) ya que no habría nada en $cosa porque no hay ningun resultado. Ésto lo puedes arreglar utilizando la función mysql_num_rows() para controlar los resultados. Quedaría así(debajo de la primera consulta): $numfilas = mysql_num_rows($almacena); if ($numfilas!=0){ while ...{} todo lo demás que tenías escrito } Saludos! |
|

