Problema en sentencia de búsqueda con varios valores.

Iniciado por mokoMonster, 24 Febrero 2011, 03:24 AM

0 Miembros y 1 Visitante están viendo este tema.

mokoMonster

He probado este código pero no funciona, nunca he trabajado con sentencias de búsqueda que contengan varios valores, se me ocurrió que podía ser así: $query=mysql_query("SELECT * FROM taxista WHERE (pais,estado,ciudad,horario,zona) like ('"%$pais%"','"%$estado%"','"%$ciudad%"','"%$horario%"','"%$zona%"')",$link);
$array=mysql_fetch_array($query);
Pero obviamente estoy haciendo algo mal por que me arroja este error: Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/blablabla/public_html/dos/html/buscataxi.php on line 67

La linea 67 es la que escribí anteriormente.

Saludos y gracias por su ayuda.
"Se necesitaron unos instantes para cortarle la cabeza, pero se necesitara un siglo para producir otra igual."
Lagrange

RedZer

no seria algo asi
Código (php) [Seleccionar]
$buscar ="esta variable es la que recuperarias osea lo que estas buscando "
SELECT pais,estado,ciudad,horario,zona FROM taxista WHERE pais LIKE '%".$buscar."%' or estado LIKE '%".$buscar."%' or ciudad LIKE '%".$buscar."%' or horario LIKE '%".$buscar."%' or zona LIKE '%".$buscar."%'
Nacido y criado entre gente que enseño a pensar antes de creer a ciegas, Todo me causa curiosidad en el mundo

Shell Root

Primero, no se si estará bien la sintaxis de MySQL...

Pero debería de ser así:
Código (php) [Seleccionar]
$query = mysql_query("SELECT * FROM taxista WHERE (pais, estado, ciudad, horario, zona) LIKE ('%".$pais."%', '%".$estado."%', '%".$ciudad."%', '%".$horario."%', '%".$zona."%')", $link);
Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.

seba123neo

creo que despues del WHERE va asi:

Código (sql) [Seleccionar]
WHERE (pais LIKE '%$pais%' OR estado LIKE '%$estado%' OR ciudad LIKE '%$ciudad%' OR horario LIKE '%$horario%' OR zona LIKE '%$zona%');"
La característica extraordinaria de las leyes de la física es que se aplican en todos lados, sea que tú elijas o no creer en ellas. Lo bueno de las ciencias es que siempre tienen la verdad, quieras creerla o no.

Neil deGrasse Tyson

mokoMonster

Wow! Muchas gracias a los 3, así es como quedó:

Código (sql) [Seleccionar]
$query = mysql_query("SELECT nombre,telefono,pais,estado,ciudad,horario,zona FROM taxista WHERE (pais LIKE '%".$pais."%' AND estado LIKE '%".$estado."%' AND ciudad LIKE '%".$ciudad."%' AND horario LIKE '%".$horario."%' AND zona LIKE '%".$zona."%')", $link);
$qur = mysql_num_rows($query);
echo '<table border="1">';
echo '<tr><td width="200"><b>Nombre del chofer</b></td><td width="200"><b>Telefono</b></td><td width="200"><b>Ciudad</b></td><td width="200"><b>Link</b></td></tr>';
if($qur > 0)
{
while($row=mysql_fetch_array($query))
{
printf("<tr><td> %s </td><td> %s </td><td> %s </td><td><a href='tid.php?id=%s' >Ver mas</a></td></tr>",$row['nombre'],$row['telefono'],$row['ciudad'],$row['id_taxista']);
}
mysql_free_result($query);
mysql_close($link);
}
echo '</table>';


Solo que no pude hacer que el id_taxista tome su valor en la sentencia printf.. :( Pero ya lo resolveré.

Muchas gracias tíos! :)
"Se necesitaron unos instantes para cortarle la cabeza, pero se necesitara un siglo para producir otra igual."
Lagrange

leo1972

Gracias a todos los que han aportado en este hilo.
Me ha servido mucho!!!

Saludos.

Leonardo