Comunidad de diseño web y desarrollo en internet online

Alguein sabe del Este Script

Citar            
MensajeEscrito el 30 Jul 2008 12:40 am
Alguien sabe por q este codigo me da error. el siguien codigo lo q hace o pretender hacer es arrojarme todos los registros q se corresponden a la consulta......... mas claro ago una consulta con el campo especialidad ... y si ingreso Pediatra ,deberia mostrarme todos los medicos q sean pediatra , el codigo es el siguiente....


Código :

<?
$conexion=mysql_connect("localhost","root","mysqladmin");
mysql_select_db("clinica",$conexion);
$query="SELECT * from medico ";//where fecha= '$_POST[fecha]'";
$query1="SELECT * from medico where especialidad= '$_POST[especialidad]'";
$resultado1=mysql_query($query1,$conexion);
$total2=mysql_num_rows($resultado1);
$resultado=mysql_query($query,$conexion);
$total=mysql_num_rows($resultado);
$total1=$total-1;

 ?>

Código :

          <?php
$conexion=mysql_connect("localhost","root","mysqladmin");
mysql_select_db("clinica",$conexion);
$query="SELECT * from especialidad where especialidad= '$especialidad'";
$resultado=mysql_query($query,$conexion);


echo '<table>';
echo   '<tr><td> Nombre</td>        <h3>  <td>Apellido</td>       <h3>     <td>Email</td> <h3><td>Cedula</td></tr>';
while($fila=mysql_fetch_array($resultado))
    {
        $nomb=$fila["nombre"];
        $apellido=$fila["apellido"];
       
echo '<tr><td>'.$nomb.'</td><td>'.$apellido.'</td><td>'.$email.'</td><td>'.$cedula.'</td></td>';
}
echo '</table>';
?>



Y el Erro Q me da es Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\AppServ\www\proyecto_clinica\HTML\Paginas\buscarMedico_por_especialidad.php on line 147

Si alguien me puede ayudar se lo agradecere

Por chuk777

5 de clabLevel



 

firefox
Citar            
MensajeEscrito el 30 Jul 2008 02:07 am
En primer lugar, sería bueno que revisaras este post.

La razón por la que tienes esa warning es porque no haces una validación de si la consulta se ejecutó con éxito. Deberías de agregar en tú código:

Código :

$resultado=mysql_query($query,$conexion);
if( !$resultado )
{
     echo "Se produjo un error en la consulta ".mysql_error();
}


Puedes personalizarlo de la manera que prefieras. Probablemente haya un error en la consulta sql por la que el resultado no es correcto, mysql_error() te mostrará cual ha sido el error.

Por Odin

Claber

639 de clabLevel

2 tutoriales

Genero:Masculino   Premio_Secretos

El valle de las hamacas

firefox
Citar            
MensajeEscrito el 30 Jul 2008 12:53 pm

chuk777 escribió:


Código :

$query="SELECT * from especialidad where especialidad= '$especialidad'";



Revisa de donde rayos sale $especialidad, no veo donde le asignas algo...

Por mauril26

161 de clabLevel



 

firefox
Citar            
MensajeEscrito el 30 Jul 2008 02:38 pm
como dice chuk no estas pasando el valor a $especialidad tienes q pasarselo con post o con get como mejor te paresca

Por talcual

686 de clabLevel



 

Colombia

msie7
Citar            
MensajeEscrito el 31 Jul 2008 01:36 am
Bien Ya solocione el problema del error ...... pero ahora no me extrae los datos de la tabla medico aqui les dejos el codigo para ver si allan el erro o el horror

<?
$conexion=mysql_connect("localhost","root","mysqladmin");
mysql_select_db("clinica",$conexion);
$query="SELECT * from medico ";//where fecha= '$_POST[fecha]'";
$query1="SELECT * from medico where especialidad like '$especialidad'";
$resultado1=mysql_query($query1,$conexion);
$total2=mysql_num_rows($resultado1);
$resultado=mysql_query($query,$conexion);
$total=mysql_num_rows($resultado);
$total1=$total-1;
//echo"<h4>En La Actualidad Se Encuentran ".$total1." Usuarios Registrados...";echo"<br>";
echo "Existen ".$total2." "; echo " ".$especialidad."--"; echo "Registrado Para La fecha" ; ?>


<?php
$conexion=mysql_connect("localhost","root","mysqladmin");
mysql_select_db("clinica",$conexion);
$query="SELECT * from medico where especialidad like '$especialidad'";
$resultado=mysql_query($query,$conexion);
$resultado=mysql_query($query,$conexion);
if( !$resultado ){ echo "Se produjo un error en la consulta ".mysql_error();}


echo '<table>';
echo '<tr><td> Nombre</td> <h3> <td>Apellido</td> <h3> <td></td> <h3><td></td></tr>';
while($fila=mysql_fetch_row($resultado))
{
$nombre=$fila["nombre"];
$apellido=$fila["apellido"];

echo '<tr><td>'.$nombre.'</td><td>'.$apellido.'</td><td></td><td></td></td>';
}
echo '</table>';
?>

Lo unico q me sale es:
Nombre Apellido

Pero nada q me muestra los campo de la tabla

Por chuk777

5 de clabLevel



 

firefox
Citar            
MensajeEscrito el 31 Jul 2008 02:23 am
echo '<tr><td>'.$nombre.'</td><td>'.$apellido.'</td><td></td><td></td></td>';

Por lo menos por encimita veo que te falta cerrar el <tr>

Ademas, si no ando mal el mysql_fetch_row retorna un vector "numérico" y NO asociativo ("indice"=>"valor"), por lo tanto o usas los índices numéricos (con mysql_fetch_row) o utilizas mysql_fetch_array con los indices asociativos correspondientes (asi como los que usas "nombre" y "apellido").

Por mauril26

161 de clabLevel



 

mozilla
Citar            
MensajeEscrito el 31 Jul 2008 02:57 am
mauril26 muxas gracias ....... me solucionastes el problemas y agradecimientos tambien a todos los q respondieron ......... se les agradece, espero no sea ni la primera ni la ultima duda q me solucionen jejeje salu2

Por chuk777

5 de clabLevel



 

msie

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.