Foros del Web » Programando para Internet » PHP »

Por que no funciona mi buscador de nombres???

Estas en el tema de Por que no funciona mi buscador de nombres??? en el foro de PHP en Foros del Web. Hola! estoy haciendo un buscador que tiene que sacar los nombres que se quieran buscar de una base de datos, tenog el codigo pero alguien ...
  #1 (permalink)  
Antiguo 19/11/2007, 02:45
 
Fecha de Ingreso: noviembre-2007
Mensajes: 51
Antigüedad: 16 años, 5 meses
Puntos: 0
Pregunta Por que no funciona mi buscador de nombres???

Hola! estoy haciendo un buscador que tiene que sacar los nombres que se quieran buscar de una base de datos, tenog el codigo pero alguien me puede decir por que no funciona?,que tengo mal? que tengo que cambiar?.
No me da ningún error pero al darle a el boton de buscar me dic que no se puede encontrar la web.
Saludos.


<body>
<form action="buscar.php" method="post">
Buscar: <input name="palabra">
<input type="submit" name="buscador" value="Buscar">
</form>
<?
if ($_POST['buscador'])
{
// Tomamos el valor ingresado
$buscar = $_POST['NOMBRE'];

// Si está vacío, lo informamos, sino realizamos la búsqueda
if(empty($buscar))
{
echo "No se ha ingresado una cadena a buscar";
}else{
// Conexión a la base de datos y seleccion de registros
$con=mysql_connect("localhost","root","asge");
$sql = "SELECT * FROM telefonos_datos WHERE NOMBRE__APELLIDOS like '%$buscar%' ORDER BY id DESC";
mysql_select_db("telefonos", $con);

$result = mysql_query($sql, $con);

// Tomamos el total de los resultados
$total = mysql_num_rows($result);

// Imprimimos los resultados
if ($row = mysql_fetch_array($result)){
echo "Resultados para: <b>$buscar</b>";
do {
?>
<p><b><a href="bucador.php?id=<?=$row['EXTEN_MOVIL'];?>"><?=$row['TLFNO'];?></a></b></p>
<?
} while ($row = mysql_fetch_array($result));
echo "<p>Resultados: $total</p>";
} else {
// En caso de no encontrar resultados
echo "No se encontraron resultados para: <b>$buscar</b>";
}
}
}
?>

</body>
</html>
  #2 (permalink)  
Antiguo 19/11/2007, 04:12
Avatar de RUX
RUX
 
Fecha de Ingreso: enero-2004
Ubicación: Las Palmas de Gran Canari
Mensajes: 566
Antigüedad: 20 años, 3 meses
Puntos: 0
Re: Por que no funciona mi buscador de nombres???

Hola, asegurate de que la ruta action="buscar.php" sea la correcta y por otro lado veo que al input, lo llamas "palabra" pero lo recojes como "nombre". Verifica esos dos datos y me cuentas.

SALUDOS
Ruyman Trujillo
__________________
Rux.es - Sitio Personal | IslaRock.com - Todo Rock
  #3 (permalink)  
Antiguo 19/11/2007, 04:18
 
Fecha de Ingreso: noviembre-2007
Mensajes: 51
Antigüedad: 16 años, 5 meses
Puntos: 0
Re: Por que no funciona mi buscador de nombres???

Hola rux!! cambie lo que me dijiste y me da este error:

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in C:\AppServ\www\buscador.php on line 32

linea 32:$total = mysql_num_rows($result);


No se encontraron resultados para: Am (pero en mi base de datos hay un nombre llamado Am)
  #4 (permalink)  
Antiguo 19/11/2007, 04:34
 
Fecha de Ingreso: octubre-2004
Mensajes: 2.627
Antigüedad: 19 años, 6 meses
Puntos: 48
Re: Por que no funciona mi buscador de nombres???

Despues de $result = mysql_query($sql, $con); pon
Código PHP:
if (!$result) {
  echo 
mysql_error();

Eso te mostrara el mensaje de error de la consulta.
  #5 (permalink)  
Antiguo 19/11/2007, 05:35
 
Fecha de Ingreso: noviembre-2007
Mensajes: 51
Antigüedad: 16 años, 5 meses
Puntos: 0
Re: Por que no funciona mi buscador de nombres???

Ahora me da este error

Unknown column 'id' in 'order clause'
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in C:\AppServ\www\buscador.php on line 36

linea36:$total = mysql_num_rows($result);
No se encontraron resultados para: Am


Codigo:

<body>
<form action="buscador.php" method="post">
Buscar: <input name="NOMBRE">
<input type="submit" name="buscador" value="Buscar">
</form>
<?
if ($_POST['buscador'])
{
// Tomamos el valor ingresado
$buscar = $_POST['NOMBRE'];

// Si está vacío, lo informamos, sino realizamos la búsqueda
if(empty($buscar))
{
echo "No se ha ingresado una cadena a buscar";
}else{
// Conexión a la base de datos y seleccion de registros
$con=mysql_connect("localhost","root","asge");
$sql = "SELECT * FROM telefonos_datos WHERE NOMBRE__APELLIDOS like '%$NOMBRE__APELLIDOS%' ORDER BY id DESC";
mysql_select_db("telefonos", $con);

$result = mysql_query($sql, $con);

if (!$result) {
echo mysql_error();
}

// Tomamos el total de los resultados
$total = mysql_num_rows($result);
// Imprimimos los resultados
if ($total >= 1){
echo "Resultados para: <b>$buscar</b>";
do {
?>
<p><b><a href="bucador.php?id=<?=$row['EXTEN_MOVIL'];?>"><?=$row['TLFNO'];?></a></b></p>
<?
} while ($row = mysql_fetch_array($result));
echo "<p>Resultados: $total</p>";
} else {
// En caso de no encontrar resultados
echo "No se encontraron resultados para: <b>$buscar</b>";
}
}
}
?>

</body>
</html>
  #6 (permalink)  
Antiguo 19/11/2007, 05:51
 
Fecha de Ingreso: octubre-2004
Mensajes: 2.627
Antigüedad: 19 años, 6 meses
Puntos: 48
Re: Por que no funciona mi buscador de nombres???

Cita:
Unknown column 'id' in 'order clause'
Entonces es que no existe campo llamado id en la tabla telefonos_datos . Cambia en la consulta SQL ese id por el nombre de campo correcto.
  #7 (permalink)  
Antiguo 19/11/2007, 06:14
 
Fecha de Ingreso: noviembre-2007
Mensajes: 51
Antigüedad: 16 años, 5 meses
Puntos: 0
Re: Por que no funciona mi buscador de nombres???

Modifique varias cosas pero no obtengo lo deseado, resulta que el boton de buscar no hace nada y a la vez se me muestran todos los nombres de la dase de datos con sus enlaces correspondientes, yo creo que sobran bastantes cosas y que me falta lo mas importante.

Codigo:

<body>
<form action="buscador.php" method="post">
Buscar: <input name="NOMBRE">
<input type="submit" name="buscador" value="Buscar">
</form>
<?
if ($_POST['buscador'])
{
// Tomamos el valor ingresado
$buscar = $_POST['NOMBRE'];

// Si está vacío, lo informamos, sino realizamos la búsqueda
if(empty($buscar))
{
echo "No se ha ingresado una cadena a buscar";
}else{
// Conexión a la base de datos y seleccion de registros
$con=mysql_connect("localhost","root","asge");
$sql = "SELECT * FROM telefonos_datos WHERE NOMBRE__APELLIDOS like '%$NOMBRE__APELLIDOS%'";
mysql_select_db("telefonos", $con);

$result = mysql_query($sql, $con);

if (!$result) {
echo mysql_error();
}

// Tomamos el total de los resultados
$total = mysql_num_rows($result);
// Imprimimos los resultados
if ($total >= 1){
echo "Resultados para: <b>$buscar</b>";
do {
?>
<p><b><a href="bucador.php?id=<?=$row['NOMBRE__APELLIDOS'];?>"><?=$row['NOMBRE__APELLIDOS'];?></a></b></p>
<?
} while ($row = mysql_fetch_array($result));
echo "<p>Resultados: $total</p>";
} else {
// En caso de no encontrar resultados
echo "No se encontraron resultados para: <b>$buscar</b>";
}
}
}
?>

</body>
</html>
  #8 (permalink)  
Antiguo 19/11/2007, 06:24
 
Fecha de Ingreso: octubre-2004
Mensajes: 2.627
Antigüedad: 19 años, 6 meses
Puntos: 48
Re: Por que no funciona mi buscador de nombres???

Cambia

like '%$NOMBRE__APELLIDOS%'

por

like '%$buscar%'

que es lo que tenias al principio y no se por que lo has cambiado.
  #9 (permalink)  
Antiguo 19/11/2007, 06:36
 
Fecha de Ingreso: noviembre-2007
Mensajes: 51
Antigüedad: 16 años, 5 meses
Puntos: 0
Re: Por que no funciona mi buscador de nombres???

Gracias!! por fin me funciona!! ahora voy a intentar arregrarlo un poco para que me quite los enlaces que tienen los nombres que se muestran por que no sirven para nada.

Un saludo!
  #10 (permalink)  
Antiguo 19/11/2007, 07:06
 
Fecha de Ingreso: noviembre-2007
Mensajes: 51
Antigüedad: 16 años, 5 meses
Puntos: 0
Re: Por que no funciona mi buscador de nombres???

Solución:

<body>
<form action="buscador.php" method="post">
<p>Buscar:
<input name="NOMBRE">
<input type="submit" name="buscador" value="Buscar">
</p>
<p><a href="trabajo php/USUARIOS.html"></a></p>
</form>
<?
if ($_POST['buscador'])
{
// Tomamos el valor ingresado
$buscar = $_POST['NOMBRE'];

// Si está vacío, lo informamos, sino realizamos la búsqueda
if(empty($buscar))
{
echo "No se ha ingresado una cadena a buscar";
}else{
// Conexión a la base de datos y seleccion de registros
$con=mysql_connect("localhost","root","asge");
$sql = "SELECT * FROM telefonos_datos WHERE NOMBRE__APELLIDOS like '%$buscar%'";
mysql_select_db("telefonos", $con);

$result = mysql_query($sql, $con);

if (!$result) {
echo mysql_error();
}

// Tomamos el total de los resultados
$total = mysql_num_rows($result);
// Imprimimos los resultados
if ($total >= 1){
echo "Resultados para: <b>$buscar</b>";
do {
?>
<p><b><a href="bucador.php?id=<?=$row['NOMBRE__APELLIDOS'];?>"><?=$row['NOMBRE__APELLIDOS'];?></a></b></p>
<p>
<?
} while ($row = mysql_fetch_array($result));
echo "<p>Resultados: $total</p>";
} else {
// En caso de no encontrar resultados
echo "No se encontraron resultados para: <b>$buscar</b>";
}
}
}
?>
</p>
<p><a href="trabajo php/USUARIOS.html">VOLVER </a></p>
</body>
</html>
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 03:54.