Foros del Web » Programando para Internet » PHP »

Problema con busqueda en mysql

Estas en el tema de Problema con busqueda en mysql en el foro de PHP en Foros del Web. navegando por ahi encontre este codigo y me decidi a usarlo en un sitio, el problema es que cuando busco, me aparece todo el contenido ...
  #1 (permalink)  
Antiguo 17/12/2006, 12:24
 
Fecha de Ingreso: diciembre-2005
Ubicación: Mar del Plata
Mensajes: 146
Antigüedad: 18 años, 4 meses
Puntos: 2
Problema con busqueda en mysql

navegando por ahi encontre este codigo y me decidi a usarlo en un sitio, el problema es que cuando busco, me aparece todo el contenido de la base de datos y no realmente lo qeu estoy buscando.. que quiere decir, estoy buscando por ID, pongo 2, y aparece 1 2 3 4 5 6, porque puede ser?...

la verdad que nose que hacer..

espero que alguien me pueda ayudar, muchas gracias de antemano

Código PHP:
<? 
//This is only displayed if they have submitted the form 
if ($searching =="yes"

echo 
"<h2>Results</h2><p>"

//If they did not enter a search term we give them an error 
if ($find == ""

echo 
"<p>You forgot to enter a search term"
exit; 


// Otherwise we connect to our Database 
mysql_connect("localhost""...""...") or die(mysql_error()); 
mysql_select_db("...") or die(mysql_error()); 

// We preform a bit of filtering 
$find strtoupper($find); 
$find strip_tags($find); 
$find trim ($find); 

//Now we search for our search term, in the field the user specified 
$data mysql_query("SELECT * FROM contenido WHERE ID_Contenido LIKE '%$ID_Contenido%'   "); 

//And we display the results 
while($result mysql_fetch_array$data )) 

echo 
$result['ID_Contenido']; 
echo 
" "



//This counts the number or results - and if there wasn't any it gives them a little message explaining that 
$anymatches=mysql_num_rows($data); 
if (
$anymatches == 0

echo 
"Sorry, but we can not find an entry to match your query<br><br>"


//And we remind them what they searched for 
echo "<b>Searched For:</b> " .$find

?>

Última edición por cpuser; 17/12/2006 a las 12:29
  #2 (permalink)  
Antiguo 17/12/2006, 12:25
 
Fecha de Ingreso: diciembre-2005
Ubicación: Mar del Plata
Mensajes: 146
Antigüedad: 18 años, 4 meses
Puntos: 2
Re: Problema con busqueda en mysql

el formulario de busqueda es este:

Código:
<form name="search" method="post" action="buscando.php">
Seach for: <input type="text" name="find"/> 

<input type="hidden" name="searching" value="yes" />
<input type="submit" name="search" value="Search" />
</form>
capaz tiene algo que ver
  #3 (permalink)  
Antiguo 17/12/2006, 14:29
Avatar de jerkan  
Fecha de Ingreso: septiembre-2005
Mensajes: 1.607
Antigüedad: 18 años, 7 meses
Puntos: 19
Re: Problema con busqueda en mysql

Yo diría que es poniendolo así:
Código PHP:
$data mysql_query("SELECT * FROM contenido WHERE ID_Contenido LIKE '%$find%'   "); 
  #4 (permalink)  
Antiguo 18/12/2006, 14:15
 
Fecha de Ingreso: diciembre-2005
Ubicación: Mar del Plata
Mensajes: 146
Antigüedad: 18 años, 4 meses
Puntos: 2
Re: Problema con busqueda en mysql

funciona perfectamente, muchisimas gracias :)
  #5 (permalink)  
Antiguo 05/01/2007, 12:10
 
Fecha de Ingreso: noviembre-2006
Mensajes: 14
Antigüedad: 17 años, 5 meses
Puntos: 1
Re: Problema con busqueda en mysql

Hola, verás me temo que tengo el mismo problema que tu tenias. Tengo una base datos y un formulario y a la hora de introducir un nombre a buscar lo que me sale es la tabla entera cuando lo que yo quiero es que me salga solo el que yo he puesto.
Me he fijado que en tu formulario en action tu buscaste en una pagina php. ¿Esa es la página de resultados o sea el codigo php, no creaste una nueva página con una tabla donde te apareciesen los datos de la base de datos?.
Ya que si yo intento buscar un dato a través de mi pagina de resultados no me sale nada.No se si me he explicado bien. te agradecería que te pusieras en c ontacto conmigo, gracias de antemano.
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 08:43.