Foros del Web » Programando para Internet » PHP »

Problema con Busqueda

Estas en el tema de Problema con Busqueda en el foro de PHP en Foros del Web. Tengo el siguiente codigo que me permitia hace unos instantes buscar en una BD pero ahora no me muestra nada Código PHP: <?php echo  "<html><body bgcolor=\"#0099CC\">" ...
  #1 (permalink)  
Antiguo 10/06/2003, 22:48
Avatar de Reynier  
Fecha de Ingreso: noviembre-2002
Ubicación: Por ahí en algún sitio
Mensajes: 1.844
Antigüedad: 22 años
Puntos: 1
Problema con Busqueda

Tengo el siguiente codigo que me permitia hace unos instantes buscar en una BD pero ahora no me muestra nada

Código PHP:
<?php
echo "<html><body bgcolor=\"#0099CC\">";
mysql_connect("localhost");
mysql_select_db("bdplantas");
switch (
$_POST['opciones'] ) {
    case 
"anticancerigena":
        
$result mysql_query("SELECT * FROM anticancerigenas WHERE familia LIKE '%$query%'  ORDER by id");
         while (
$row=mysql_fetch_assoc($result))
          {
            echo 
"<font face=\"Tahoma\" size=\"2\">Familia:</font>";
            echo 
"&nbsp;";
            echo 
"<font face=\"Tahoma\" size=\"2\">".$row["familia"]."</font>";
            echo 
"<br>";
            echo 
"<font face=\"Tahoma\" size=\"2\">Nombre Científico:</font>";
            echo 
"&nbsp;";
            echo 
"<font face=\"Tahoma\" size=\"2\">".$row["nombre_cientifico"]."</font>";
             echo 
"<br>";
            echo 
"<font face=\"Tahoma\" size=\"2\">Nombre Común:</font>";
            echo 
"&nbsp;";
            echo 
"<font face=\"Tahoma\" size=\"2\">".$row["nombre_comun"]."</font>";
            echo 
"<br>";
            echo 
"<font face=\"Tahoma\" size=\"2\">Tipos de Cáncer:</font>";
            echo 
"&nbsp;";
            echo 
"<font face=\"Tahoma\" size=\"2\">".$row["tipos_cancer"]."</font>";
            echo 
"<br>";
            echo 
"<font face=\"Tahoma\" size=\"2\">Parte de la Planta Empleada:</font>";
             echo 
"&nbsp;";
            echo 
"<font face=\"Tahoma\" size=\"2\">".$row["parte_plan_emple"]."</font>";
            echo 
"<br>";
            echo 
"<font face=\"Tahoma\" size=\"2\">Preparación:</font>";
            echo 
"&nbsp;";
            echo 
"<font face=\"Tahoma\" size=\"2\">".$row["preparacion"]."</font>";
            echo 
"<br>";
            echo 
"<font face=\"Tahoma\" size=\"2\">Tipo de Estudio:</font>";
            echo 
"&nbsp;";
            echo 
"<font face=\"Tahoma\" size=\"2\">".$row["tipo_est"]."</font>";
            echo 
"<br>";
            echo 
"<font face=\"Tahoma\" size=\"2\">Metabólitos responsables de la acción:</font>";
            echo 
"&nbsp;";
            echo 
"<font face=\"Tahoma\" size=\"2\">".$row["met_resp_act"]."</font>";
            echo 
"<br>";
            echo 
"<font face=\"Tahoma\" size=\"2\">Referencia:</font>";
            echo 
"&nbsp;";
            
$url $row["ref"];;
            echo 
"<font face=\"Tahoma\" size=\"2\">Sitio Web"."<a href = "$url."</font>";
            echo 
"<br>";
            echo 
"--------------------------------------------------";
            echo 
"--------------------------------------------------";
            echo 
"--------------------------------------------------";
           }
          
mysql_free_result($result);
        break;
        case 
"hipoglicemiante":
        
$result mysql_query("SELECT * FROM hipoglicemiante WHERE familia LIKE '%$query%'  ORDER by id");
         while (
$row=mysql_fetch_assoc($result))
          {
            echo 
"<font face=\"Tahoma\" size=\"2\">Familia:</font>";
            echo 
"&nbsp;";
            echo 
"<font face=\"Tahoma\" size=\"2\">".$row["familia"]."</font>";
            echo 
"<br>";
            echo 
"<font face=\"Tahoma\" size=\"2\">Nombre Científico:</font>";
            echo 
"&nbsp;";
            echo 
"<font face=\"Tahoma\" size=\"2\">".$row["nombre_cientifico"]."</font>";
             echo 
"<br>";
            echo 
"<font face=\"Tahoma\" size=\"2\">Nombre Común:</font>";
            echo 
"&nbsp;";
            echo 
"<font face=\"Tahoma\" size=\"2\">".$row["nombre_comun"]."</font>";
            echo 
"<br>";
            echo 
"<font face=\"Tahoma\" size=\"2\">Parte de la Planta Empleada:</font>";
             echo 
"&nbsp;";
            echo 
"<font face=\"Tahoma\" size=\"2\">".$row["parte_plan_emple"]."</font>";
            echo 
"<br>";
            echo 
"<font face=\"Tahoma\" size=\"2\">Preparación:</font>";
            echo 
"&nbsp;";
            echo 
"<font face=\"Tahoma\" size=\"2\">".$row["preparacion"]."</font>";
            echo 
"<br>";
            echo 
"<font face=\"Tahoma\" size=\"2\">Tipo de Estudio:</font>";
            echo 
"&nbsp;";
            echo 
"<font face=\"Tahoma\" size=\"2\">".$row["tipo_est"]."</font>";
            echo 
"<br>";
            echo 
"<font face=\"Tahoma\" size=\"2\">Metabólitos responsables de la acción:</font>";
            echo 
"&nbsp;";
            echo 
"<font face=\"Tahoma\" size=\"2\">".$row["met_resp_act"]."</font>";
            echo 
"<br>";
            echo 
"--------------------------------------------------";
            echo 
"--------------------------------------------------";
            echo 
"--------------------------------------------------";
          }
          
mysql_free_result($result);
        break;
    default:
    die(
"No puedo adicionar nada a la BD");
echo 
"</body></html>";
?>
Que error tiene?
__________________
Ing. Reynier Pérez Mira
  #2 (permalink)  
Antiguo 10/06/2003, 22:57
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 10 meses
Puntos: 129
Y te dá algún error? ..

Bueno .. usa:

$result = mysql_query("SELECT * FROM anticancerigenas WHERE familia LIKE '%$query%' ORDER by id") or die(mysql_error());

.. Si fuera error de Msyql de conexión (igual se te ha caido Msyql en ese momento .. pues ahí lo veras .. y más si decías que antes te funcionaba ese código sin tocarle nada ...)

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #3 (permalink)  
Antiguo 10/06/2003, 23:03
Avatar de Reynier  
Fecha de Ingreso: noviembre-2002
Ubicación: Por ahí en algún sitio
Mensajes: 1.844
Antigüedad: 22 años
Puntos: 1
Problema

Lo que me pasa es que en la pagina donde debía poner los resultados no me sale absolutamente nada.

¿No se que pueda pasar pues creo que el codigo es bien?

Ya verifique el MySQL y me esta trabajando ademas tengo otra pagina que me muestra todos los datos introducidos en la BD y me los muestra sin nigun error, por lo que creo que no es el MySQL
__________________
Ing. Reynier Pérez Mira
  #4 (permalink)  
Antiguo 10/06/2003, 23:11
Avatar de lado2mx
Colaborador
 
Fecha de Ingreso: agosto-2001
Ubicación: Veracruz
Mensajes: 3.720
Antigüedad: 23 años, 3 meses
Puntos: 9
mmm, intenta esto: cambia los $row["cadenas"] por $row[0] o 1 o 2... o mejor, cambia las comillas por comilla: $row['cadena']

Última edición por lado2mx; 10/06/2003 a las 23:13
  #5 (permalink)  
Antiguo 10/06/2003, 23:17
Avatar de Reynier  
Fecha de Ingreso: noviembre-2002
Ubicación: Por ahí en algún sitio
Mensajes: 1.844
Antigüedad: 22 años
Puntos: 1
Nada

Nada no me imprime nada
__________________
Ing. Reynier Pérez Mira
  #6 (permalink)  
Antiguo 11/06/2003, 14:39
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 10 meses
Puntos: 129
Prueba a quitar el espacio que tienes en el switch .. y verifica (con un echo $_POST['opciones']) que recibes esa variable y es alguno de los valores esperados de los "case" ..

Código PHP:
switch ($_POST['opciones']) { 
¿Seguro que la variable "opciones" es enviada desde un formulario por método POST? .. o lo mandas por el URL o GET? .. Revisalo.?

Y el $query de donde llega? . no debería ser $_POST['query'] .. (siguiendo los arrays superglobales que ya usas? ..):

Código PHP:
$result mysql_query("SELECT * FROM anticancerigenas WHERE familia LIKE '%".$_POST['query']."%'  ORDER by id"); 
Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #7 (permalink)  
Antiguo 11/06/2003, 15:02
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 22 años, 5 meses
Puntos: 16
Hola,
Cita:
Tengo el siguiente codigo que me permitia hace unos instantes buscar en una BD pero ahora no me muestra nada
¿Que es lo que ha cambiado desde hace unos instantes? ¿Has actualizado el servidor, cambiado alguna configuracion? ¿Seguro que existe algun dato por el criterio que quieres buscar? ¿Has eliminado datos o modificado? ¿Has cerrado el switch() (en el mensaje parece que no - iria detras del die()? ¿Cuando dices que no imprime nada de nada es que no saca los resultados o no muestra nada de HTML (podria ser un problema de demasiados datos y tarda mas de los 30 segundos de ejecucion - mira set_time_limit() en el manual)?

Cuando se me ocurran mas preguntas te aviso.

Suerte.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
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:29.