Foros del Web » Programando para Internet » PHP »

Problemas con buscador

Estas en el tema de Problemas con buscador en el foro de PHP en Foros del Web. Como están todos!! Este script es de un buscador por letras, pero no he podido hacerlo funcionar de ninguna forma que se me haya ocurrido, ...
  #1 (permalink)  
Antiguo 08/01/2010, 09:28
Avatar de djcd  
Fecha de Ingreso: enero-2010
Ubicación: Localhost
Mensajes: 11
Antigüedad: 14 años, 10 meses
Puntos: 0
Busqueda Problemas con buscador

Como están todos!!
Este script es de un buscador por letras, pero no he podido hacerlo funcionar de ninguna forma que se me haya ocurrido, claro que no conozco mucho de php. ¿Podrían darme una idea de como hacerlo funcionar?
Agradecido.

Indice
Código PHP:
    foreach(range('A''Z') as $letra) {
       echo 
"<a href='http://".$_SERVER['HTTP_HOST']."/buscador.php?Letra=".$letra."'>".$letra."</a> ";
     }
     foreach(
range('0''9') as $letra) {
        echo 
"<a href='http://".$_SERVER['HTTP_HOST']."/buscador.php?Letra=".$letra."'>".$letra."</a> ";
     } 
Buscador
Código PHP:
$ser "host";
$usr "yo";
$pas "pass";
$db="db";

if (!empty(
$_GET['letra'])){ 
   
$letra=substr($_GET['letra'], 01); 
   
$sql="SELECT * FROM cliente WHERE nombreComercial LIKE '".$letra."%'";   
   
$resultado=mysql_query($sql) or die (mysql_error()) 
  
$num_registros is_resource($resultado) ? mysql_num_rows($resultado) : 0
     while (
$row=mysql_fetch_array($resultado)){ 
         echo 
$row['nombreComercial'];
     } 
  } else { 
    echo 
"No hay resultados"
  } 
} else { 
   echo 
"Indique una letra a filtrar ..."

  #2 (permalink)  
Antiguo 08/01/2010, 09:32
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años, 7 meses
Puntos: 839
Respuesta: Problemas con buscador

Uno de los posibles problemas, es que debería ser $_GET['Letra'], y no $_GET['letra']
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #3 (permalink)  
Antiguo 08/01/2010, 09:40
Avatar de djcd  
Fecha de Ingreso: enero-2010
Ubicación: Localhost
Mensajes: 11
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Problemas con buscador

Gracias por tu respuesta, David.
Hice la modificación pero se mantiene igual.
De hehco el error que muestra es

unexpected T_VARIABLE in /home/.....................buscador.php on line 17

o sea la línea
$num_registros = is_resource($resultado) ? mysql_num_rows($resultado) : 0;

Fue algo que no se me ocurrió, bienvenida cualquier sugerencia.
  #4 (permalink)  
Antiguo 08/01/2010, 09:46
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años, 7 meses
Puntos: 839
Respuesta: Problemas con buscador

De cualquier modo, tienes aquí un error de sintaxis:
Código PHP:
Ver original
  1. echo "No hay resultados".
Debería ser ; en lugar de .

Así también, te falta el ; al final de esta línea:
Código PHP:
Ver original
  1. $resultado=mysql_query($sql) or die (mysql_error())
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #5 (permalink)  
Antiguo 08/01/2010, 09:52
Avatar de djcd  
Fecha de Ingreso: enero-2010
Ubicación: Localhost
Mensajes: 11
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Problemas con buscador

Pido disculpas por eso, no sé como se me había pasado.
Lo modifiqué, pero me envía el mensaje

syntax error, unexpected '}' in ............buscador.php on line 24

Ahí si me pilló desprevenido.
  #6 (permalink)  
Antiguo 08/01/2010, 09:56
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años, 7 meses
Puntos: 839
Respuesta: Problemas con buscador

Sería conveniente que leas un manual acerca de la sintaxis de PHP.

Por ejemplo, este último bloque ya no tiene sentido:
Código PHP:
Ver original
  1. } else {
  2.    echo "Indique una letra a filtrar ...";
  3. }
Pues el bloque if anterior ya está cerrado.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #7 (permalink)  
Antiguo 08/01/2010, 10:05
Avatar de djcd  
Fecha de Ingreso: enero-2010
Ubicación: Localhost
Mensajes: 11
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Problemas con buscador

Vuelvo a agradecerte, David, además me impresiona sobremanera la rapidez de las respuestas y como ves esos detalles.
Eliminé el sobrante, pero me sorprendió con un mensaje que ni había visto antes:

syntax error, unexpected '}' in /home/....................buscador.php on line 24

24. }
25. ?>

¿Estas líneas también sobran?
  #8 (permalink)  
Antiguo 08/01/2010, 10:09
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años, 7 meses
Puntos: 839
Respuesta: Problemas con buscador

El mensaje de error dice: "Error de sintaxis, no se esparaba '}' en /home/....buscador.php en la línea 24"

Significa que ese } no está abierto en ninguna parte, sobra. Debes revisar dónde abres/cierras los bloques para evitar confusiones.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #9 (permalink)  
Antiguo 08/01/2010, 10:17
Avatar de djcd  
Fecha de Ingreso: enero-2010
Ubicación: Localhost
Mensajes: 11
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Problemas con buscador

Apenas vi el mensaje po primero que hice fue borrar ese }, pero el resultado fue muy distinto. Recibí dos mensaje que son:

Código HTML:
Warning: mysql_query() [function.mysql-query]: Access denied for user 'nobody'@'localhost' (using password: NO) in /home/............buscador.php on line 15
y
Código HTML:
Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in /home/..........buscador.php on line 15
o sea la línea
Código PHP:
$resultado=mysql_query($sql) or die (mysql_error()); 
Seguí tu consejo y revisé la sintaxis basándome en textos que tengo, no ví nada malo a mi vista, pero agradecería tu opinión.
  #10 (permalink)  
Antiguo 08/01/2010, 10:20
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años, 7 meses
Puntos: 839
Respuesta: Problemas con buscador

Es que en este caso ya no es un error de sintaxis.

El problema es que no estás conectando al servidor de base de datos, para eso debes usar mysql_connect.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #11 (permalink)  
Antiguo 08/01/2010, 10:27
Avatar de djcd  
Fecha de Ingreso: enero-2010
Ubicación: Localhost
Mensajes: 11
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Problemas con buscador

Tienes toda la razón.
Detalles como ése hicieron que se me cayera el pelo.
Por fin tuve respuesta (¡¡Bravo!!)
Pero no como la que imaginaba:

Código:
arteaspartameautomotora
¿Podría preguntarte si sabes como hacer que un paginador me devuelva esa consulta en tablas?
Estuve leyendo sobre paginadores, pero en ninguna parte hallé como hacer que funcionen juntos el buscador y el paginador.

Por lo pronto, un millón de gracias, básicamente mi hermano te debe su empleo.
  #12 (permalink)  
Antiguo 08/01/2010, 10:30
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años, 7 meses
Puntos: 839
Respuesta: Problemas con buscador

Puedes usar esta clase para la paginación:
http://www.forosdelweb.com/f18/aport...ing-v2-638538/

Saludos.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #13 (permalink)  
Antiguo 08/01/2010, 10:37
Avatar de djcd  
Fecha de Ingreso: enero-2010
Ubicación: Localhost
Mensajes: 11
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Problemas con buscador

Mi más sincero agradecimiento, David, y un fuerte apretón de manos.

Etiquetas: buscadores
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 21:57.