Foros del Web » Programando para Internet » PHP »

No consigo hacer correr este pequeño Buscador

Estas en el tema de No consigo hacer correr este pequeño Buscador en el foro de PHP en Foros del Web. No consigo hacer funcionar este pequeño buscador, el que está en: http://www.xlwebmasters.com/doc3.php?id=281&doc=php33 Lo he adapatado a mi bd, pero no funciona, como que no pasa ...
  #1 (permalink)  
Antiguo 03/06/2003, 13:18
Avatar de jpogsistem  
Fecha de Ingreso: diciembre-2001
Mensajes: 2.405
Antigüedad: 16 años
Puntos: 4
No consigo hacer correr este pequeño Buscador

No consigo hacer funcionar este pequeño buscador, el que está en:

http://www.xlwebmasters.com/doc3.php?id=281&doc=php33

Lo he adapatado a mi bd, pero no funciona, como que no pasa el parámetro. Estoy en IIS con PHP 4.3.1.

Pongo el codigo a ver si alguien me da una ayuda:


formulario.php


<form name="form1" method="post" action="">
<FORM ACTION="busca.php">
<div align="center">
<INPUT TYPE="TEXT" NAME="palabra">
<INPUT TYPE="SUBMIT" NAME="Buscar">
</div>
</form>



busca.php

<?
$conexio = mysql_connect("localhost", "root", "");
mysql_select_db ("mibasededatos", $conexio) OR die ("No se puede conectar");

// SQL para la búsqueda
$sql="SELECT * FROM usuarios WHERE nombre LIKE '%".$palabra."%' ";

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

// Si hay resultados crea una tabla y los muestra
if ($row= mysql_fetch_array($result))
{
echo "<TABLE BORDER='0'>";
DO
{
echo "$row['nombre'];
}
WHILE ($row=mysql_fetch_array($result));
echo "</TABLE>";
}
mysql_close ($conexio);
?>


Cuando ejecuto formulario.php no pasa nada, se queda en la misma página.


Gracais de Antemano
  #2 (permalink)  
Antiguo 03/06/2003, 13:22
Avatar de lado2mx
Colaborador
 
Fecha de Ingreso: agosto-2001
Ubicación: Veracruz
Mensajes: 3.720
Antigüedad: 16 años, 4 meses
Puntos: 9
no seria mejor:
Código PHP:
$sql="SELECT * FROM usuarios WHERE nombre LIKE '%$palabra%' "
  #3 (permalink)  
Antiguo 03/06/2003, 13:56
 
Fecha de Ingreso: junio-2003
Mensajes: 22
Antigüedad: 14 años, 6 meses
Puntos: 0
Prueba a quitar un form del submit
__________________
:aplauso:
  #4 (permalink)  
Antiguo 03/06/2003, 14:11
Avatar de lado2mx
Colaborador
 
Fecha de Ingreso: agosto-2001
Ubicación: Veracruz
Mensajes: 3.720
Antigüedad: 16 años, 4 meses
Puntos: 9
Cita:
Mensaje Original por dan mark
Prueba a quitar un form del submit
Tambien eso.
  #5 (permalink)  
Antiguo 03/06/2003, 15:31
Avatar de jpogsistem  
Fecha de Ingreso: diciembre-2001
Mensajes: 2.405
Antigüedad: 16 años
Puntos: 4
Mejoró Utilizando:

<FORM ACTION="busca.php">
<div align="center">
<INPUT TYPE="TEXT" NAME="palabra">
<INPUT TYPE="SUBMIT" NAME="Buscar">
</div>
</form>




Y en Busca.php:


<?
$conexio = mysql_connect("localhost", "root", "");
mysql_select_db ("rendiciondecuentas", $conexio) OR die ("No se puede conectar");

// SQL para la búsqueda
$sql="SELECT * FROM usuarios WHERE nombre LIKE '%$palabra%' ";

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

// Si hay resultados crea una tabla y los muestra
if ($row= mysql_fetch_array($result))
{
echo "<TABLE BORDER='0'>";
DO
{
echo "$row['nombre'];
}
WHILE ($row=mysql_fetch_array($result));
echo "</TABLE>";
}
mysql_close ($conexio);
?>



Ahora parece que envia la variable, pero marca el siguiente error:


Parse error: parse error, unexpected '/' in c:\inetpub\wwwroot\busca.php on line 19


Siendo la línea 19:

echo "</TABLE>";

La verdad busqué en php.net pero no encontré algo que entienda.

Gracias
  #6 (permalink)  
Antiguo 03/06/2003, 15:44
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 6 meses
Puntos: 16
Hola,

Se te olvido cerrar las comillas o quitar las del comienzo en :
Código PHP:
 echo "$row['nombre']; 
Yo te recomiendo usar:
Código PHP:
 echo $row['nombre']; 
porque si cierras las comillas no te va a entender el array. Ademas, solo quieres mostrar la variable, no ninguna cadena. No se porque la gente tiene esa mania. Pero si de todos modos quieres usar las comillas, usa:
Código PHP:
 echo "{$row['nombre']}"
Es gusto personal, porque esto tambien funcionaria:
Código PHP:
 echo "$row[nombre]"
Para este caso considero escesivo el uso de la sintaxis HEREDOC.

En fin, que el problema era que encontraba la primera comilla de ese echo y tomaba hasta la siguientes comillas (las del echo "</table";) como una cadena. Como recomendacion, si la linea donde dice PHP que esta el error esta bien, empieza a revisar una a una hacia atras las anteriores.

Espero haber sido de ayuda (y perdona por la chapa).
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #7 (permalink)  
Antiguo 03/06/2003, 16:05
Avatar de jpogsistem  
Fecha de Ingreso: diciembre-2001
Mensajes: 2.405
Antigüedad: 16 años
Puntos: 4
Era eso josemi, gracias
__________________
EL LIMITE ES EL UNIVERSO
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:42.