• Miércoles 20 de Noviembre de 2024, 08:35

Autor Tema:  Busquedas En La Base De Datos  (Leído 1441 veces)

msalinas

  • Nuevo Miembro
  • *
  • Mensajes: 9
    • Ver Perfil
Busquedas En La Base De Datos
« en: Viernes 10 de Septiembre de 2004, 17:27 »
0
Hola tengo este codig q me sirve para buscar los campos de una base de datos introduciendo solo una palabra pero no se como hacer q solo me salgan los campos q yo deseo y no todos los de la base de datos q es lo q me devuelve ahora este codigo.
<?


if(isset($_POST['enviar'])) {

// Solo se ejecuta si se ha enviado el formulario

$query = "SELECT * from noticias WHERE {$_POST['titulo']} LIKE '%{$_POST['palabra']}%'";
$link = mysql_connect("localhost","","");
mysql_select_db("prueba",$link);
$result = mysql_query($query,$link);



$found = false; // Si el query ha devuelto algo pondrá a true esta variable

while ($row = mysql_fetch_array($result)) {

$found = true;

echo "<p>";

foreach($row as $nombre_campo => $valor_campo) {

// Tenemos que mostrar todos los campos de las filas donde se haya
// encontrado la búsqueda.


if(is_int($nombre_campo)) {

continue; //Cuando hacemos mysql_fetch_array, php genera un array
// con todos los valores guardados dos veces, uno con
// índice numérico y otro con índice el nombre del campo.
// Solo nos interesa el del nombre del campo.

}

echo "<b>".$nombre_campo."</b> : ".$valor_campo."<br>";
}

echo "</p>";

}

if(!$found) {

echo "No se encontró la palabra introducida";

}

}
?>

Avalon

  • Miembro MUY activo
  • ***
  • Mensajes: 448
    • Ver Perfil
Re: Busquedas En La Base De Datos
« Respuesta #1 en: Viernes 10 de Septiembre de 2004, 17:58 »
0
Si solo quieres que te devuelva unos campos en concreto sustituye la siguiente línea

Código: Text
  1. &#036;query = &#34;SELECT * from noticias WHERE {&#036;_POST['titulo']} LIKE '%{&#036;_POST['palabra']}%'&#34;;
  2.  

por esta otra

Código: Text
  1. &#036;query = &#34;SELECT campo1, campo2, campo3 from noticias WHERE {&#036;_POST['titulo']} LIKE '%{&#036;_POST['palabra']}%'&#34;;
  2.  


Donde campo1, campo2 y campo3 son los nombres de los campos cuyo valor quieres obtener de la consulta. Por supuesto puedes poner todos los nombres de campo que quieras, separados por comas.

Espero que sea eso lo que preguntabas.


Salu2,
Avalon

Informix

  • Miembro MUY activo
  • ***
  • Mensajes: 154
    • Ver Perfil
Re: Busquedas En La Base De Datos
« Respuesta #2 en: Sábado 11 de Septiembre de 2004, 18:29 »
0
:hola:

tambien te puede servir esta funcion

string stristr ( string pajar, string aguja)

Devuelve todo el pajar desde la primera aparición de la aguja, siendo el pajar examinado sin tener en cuenta mayúsculas o minúsculas.

Si la aguja no se encuentra, devuelve FALSE.

Si la aguja no es una cadena, es convertida a entero y usada como código de un carácter ASCII.

 :kicking:
Informix

"Ganar no es algo momentáneo, es algo permanente. Uno no gana de vez en cuando, uno no hace las cosas bien a veces, uno hace las cosas bien siempre" .

Vince Lombardi