Ver Mensaje Individual
  #2 (permalink)  
Antiguo 14/08/2008, 17:25
HHH_SLV
 
Fecha de Ingreso: agosto-2008
Mensajes: 2
Antigüedad: 16 años, 6 meses
Puntos: 0
Respuesta: Dos preguntas sobre consultas

Pues con lo de la primera pregunta, te quedaria de esta forma:

Código PHP:
$consulta="SELECT nombre, aficiones FORM amigos WHIERE nombre LIKE '%".$busqueda."%' OR aficiones LIKE '%".$busqueda."%'"
Con lo anterior buscará la palabra en los dos campos que tu quieres.


Con la segunda pregunta, podes hacer lo siguiente:

Código PHP:

$wordmagic
=$_POST['wordmagic']; // Para obtener el valor del campo de texto
$wordmagic strip_tags($wordmagic); //Elimina etiquetas HTML y PHP de la cadena, esto por si a caso meten en el campo de texto etiquetas de este tipo
$trozos explode(" "$wordmagic); //Separa por cadenas la frease.. en una cadena "toño" y en la siguente "futbol" 
Con lo anterior solamente se han separado las palabras, ahora tienes que armar la consulta, la cual puede ser asi (puedes modificarla)

Código PHP:

$valor
=1;  //esta es una bandera
foreach ($trozos as $trozo) { //con esto leeremos cada palabra de la oracion original
  
if ($valor==1){ $condicion.="(nombre LIKE '%$trozo%' OR aficiones LIKE '%$trozo%')"$valor=0;} //utilizamos una concatenacion para comenzar a armar la consulta y al mismo tiempo, cambiamos el valor de la bandera
  
else {$condicion.=" OR (nombre LIKE '%$trozo%' OR aficiones LIKE '%$trozo%')"; } //dentro del else, se termina de armar la consulta, eso por si a caso tienes una frase mas larga como: "toño loco por el futbol" eso hara que busque cada una de esas palabras en los campos

$query="SELECT * FROM amigos WHERE $condicion ORDER BY id DESC"//aqui terminamos de armar la consulta donde serán ordenados descendentemente por el id

//luego haces la consulta a la base
$resultado mysql_query($query$conexion) or die(mysql_error()); 
Bueno, espero haberte ayudado un poco...podes consultar manuales de SQL para que podas armar mejor las consultas hay muchos en la red. Suerte!!!