Foros del Web » Programando para Internet » PHP »

¿Cual es mi eroor de sintaxis? en Motor de busqueda

Estas en el tema de ¿Cual es mi eroor de sintaxis? en Motor de busqueda en el foro de PHP en Foros del Web. Hola estoy tratando de implementar un motor de busqueda en mi web según el siguiente tutorial http://www.youtube.com/watch?v=1CEYLSslXXw pero cuando voy a hacer la buequeda mi ...
  #1 (permalink)  
Antiguo 14/05/2010, 15:21
Avatar de salvador86  
Fecha de Ingreso: enero-2008
Ubicación: Guadalajara- Mexico
Mensajes: 467
Antigüedad: 16 años, 3 meses
Puntos: 2
¿Cual es mi eroor de sintaxis? en Motor de busqueda

Hola estoy tratando de implementar un motor de busqueda en mi web según el siguiente tutorial http://www.youtube.com/watch?v=1CEYLSslXXw pero cuando voy a hacer la buequeda mi sale error de sintaxis en la línea 23 y he rebizado pero no encuentro el error. gracias por ayudarme.

Este es mi código
Código PHP:
<?php
$button 
$_GET ['submit'];
$search $_GET ['search'];

if (!
$button)
    echo
"Ingrese el texto a buscar";
else{
    if (
strlen($search)<=3)
        echo
"El texto es demasiado corto";
    else{
        echo 
"Ha buscado<b>$search</b><hr size='1' color='blue'>";

mysql_connect("localhost","pyminsta_usearch","circuito17");
mysql_select_db("pyminsta_search");

$search_exploded explode(" "$search);

foreach(
$search_exploded as $search_each){
    
$x++
    if (
$x==1)
    
$construct .= "Keywords LIKE '%$search_each%'";
    else
    
$construct .= "Keywords LIKE '%%$search_each'";  
}

$construct "SELECT * FROM searchengine $construct";
$run mysql_query($construct);
$foundnum mysql_num_rows($run);

if (
$foundnum==0)
echo 
"No hay resultado de la busqueda";
else
{
    echo 
"$foundnum results found.<p>";
    while (
$runrows mysql_fetch_assoc($run))
    {
    
$title $runrows['title'];
    
$desc $runrows['description'];
    
$url $runrows['url'];
    echo 
"
    <br />
    <b><a href='$url'>$title</a></b><p>
    $desc<br />__________________________"
;
}
}
}
}
?>
Salvador
  #2 (permalink)  
Antiguo 14/05/2010, 15:22
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 14 años, 6 meses
Puntos: 334
Respuesta: ¿Cual es mi eroor de sintaxis? en Motor de busqueda




y el error es ?
y la linea del error dice?

nadie vera todo un tutorial en youtube solo para responderte -?
__________________
More about me...
~ @rhyudek1
~ Github
  #3 (permalink)  
Antiguo 14/05/2010, 15:24
Avatar de Synkronice  
Fecha de Ingreso: octubre-2007
Ubicación: Madrid
Mensajes: 831
Antigüedad: 16 años, 6 meses
Puntos: 48
Respuesta: ¿Cual es mi eroor de sintaxis? en Motor de busqueda

Cita:
Iniciado por salvador86 Ver Mensaje
Hola estoy tratando de implementar un motor de busqueda en mi web según el siguiente tutorial http://www.youtube.com/watch?v=1CEYLSslXXw pero cuando voy a hacer la buequeda mi sale error de sintaxis en la línea 23 y he rebizado pero no encuentro el error. gracias por ayudarme.
Si nos enseñas lo que hay de la línea 20 a la 25 a lo mejor podemos ver cual es el error de sintaxis.

PD: Si las numeras mejor.

Saludos!
__________________
El problema de nuestra época consiste en que sus hombres no quieren ser útiles sino importantes.

Winston Churchill
  #4 (permalink)  
Antiguo 14/05/2010, 15:48
Avatar de salvador86  
Fecha de Ingreso: enero-2008
Ubicación: Guadalajara- Mexico
Mensajes: 467
Antigüedad: 16 años, 3 meses
Puntos: 2
Respuesta: ¿Cual es mi eroor de sintaxis? en Motor de busqueda

Gracias Synkronice por responder, en todo este tutorial solo se escribe el codigo que mostre arriba, el error lo bota en el foreach

Código PHP:
foreach($search_exploded as $search_each){
    
$x++  //Este es la linea en que me bota error
    
if ($x==1)
    
$contruct .= "Keywords LIKE '%$search_each%'";
    else
    
$construct .= "Keywords LIKE '%%$search_each'";  

  #5 (permalink)  
Antiguo 14/05/2010, 15:50
Avatar de Synkronice  
Fecha de Ingreso: octubre-2007
Ubicación: Madrid
Mensajes: 831
Antigüedad: 16 años, 6 meses
Puntos: 48
Respuesta: ¿Cual es mi eroor de sintaxis? en Motor de busqueda

En la linea donde pones

Código PHP:
$x++  //Este es la linea en que me bota error 
te falta un ;

debería ser así

Código PHP:
$x++;  //Este es la linea en que me bota error 
Saludos!
__________________
El problema de nuestra época consiste en que sus hombres no quieren ser útiles sino importantes.

Winston Churchill
  #6 (permalink)  
Antiguo 14/05/2010, 15:52
Avatar de salvador86  
Fecha de Ingreso: enero-2008
Ubicación: Guadalajara- Mexico
Mensajes: 467
Antigüedad: 16 años, 3 meses
Puntos: 2
Respuesta: ¿Cual es mi eroor de sintaxis? en Motor de busqueda

Según el tutorial cree una tabla con 5 columnas (id, title, description,url, keywords) aqui lo he subido y nada http://www.pyminstalaciones.com/buscar.php la palabra de por el momento debe buscarse es "videos"
  #7 (permalink)  
Antiguo 14/05/2010, 15:53
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 14 años, 6 meses
Puntos: 334
Respuesta: ¿Cual es mi eroor de sintaxis? en Motor de busqueda

recuerda que aunque sea un tutorial no necesariamente lo hiso un genio en php.. todos cometen errores..
=)
__________________
More about me...
~ @rhyudek1
~ Github
  #8 (permalink)  
Antiguo 14/05/2010, 15:57
Avatar de salvador86  
Fecha de Ingreso: enero-2008
Ubicación: Guadalajara- Mexico
Mensajes: 467
Antigüedad: 16 años, 3 meses
Puntos: 2
Respuesta: ¿Cual es mi eroor de sintaxis? en Motor de busqueda

Hola muchas gracias Synkronice ya no sale error pero no encuentra nada, como si la palabra reservada no estaria en mi base de datos habra un eroor en mi conexion en realidad estoy en pañales en PHP, gracias.

Se queda en
Cita:
if (!$button)
echo"Ingrese el texto a buscar";
como si fuera que esta vacio alguna sugerencia
  #9 (permalink)  
Antiguo 14/05/2010, 16:06
Avatar de Synkronice  
Fecha de Ingreso: octubre-2007
Ubicación: Madrid
Mensajes: 831
Antigüedad: 16 años, 6 meses
Puntos: 48
Respuesta: ¿Cual es mi eroor de sintaxis? en Motor de busqueda

Cita:
Iniciado por salvador86 Ver Mensaje
Hola muchas gracias Synkronice ya no sale error pero no encuentra nada, como si la palabra reservada no estaria en mi base de datos habra un eroor en mi conexion en realidad estoy en pañales en PHP, gracias.

Se queda en


como si fuera que esta vacio alguna sugerencia
Cambia

Código PHP:
if (!$button
por

Código PHP:
if (!$search
Saludos!
__________________
El problema de nuestra época consiste en que sus hombres no quieren ser útiles sino importantes.

Winston Churchill
  #10 (permalink)  
Antiguo 14/05/2010, 16:13
Avatar de salvador86  
Fecha de Ingreso: enero-2008
Ubicación: Guadalajara- Mexico
Mensajes: 467
Antigüedad: 16 años, 3 meses
Puntos: 2
Respuesta: ¿Cual es mi eroor de sintaxis? en Motor de busqueda

Hola muchas gracias por tu paciencia, ahora lo que me sale es que hay error en la linea 28 donde se muestra:
Cita:
$foundnum = mysql_num_rows($run);
es raro porque en el tutorial la chica lo sube el archivo y se le hace las busquedas
  #11 (permalink)  
Antiguo 14/05/2010, 16:16
Avatar de Synkronice  
Fecha de Ingreso: octubre-2007
Ubicación: Madrid
Mensajes: 831
Antigüedad: 16 años, 6 meses
Puntos: 48
Respuesta: ¿Cual es mi eroor de sintaxis? en Motor de busqueda

Cita:
Iniciado por salvador86 Ver Mensaje
Hola muchas gracias por tu paciencia, ahora lo que me sale es que hay error en la linea 28 donde se muestra:

es raro porque en el tutorial la chica lo sube el archivo y se le hace las busquedas
Cual es el error que te da??
__________________
El problema de nuestra época consiste en que sus hombres no quieren ser útiles sino importantes.

Winston Churchill
  #12 (permalink)  
Antiguo 14/05/2010, 16:21
Avatar de Synkronice  
Fecha de Ingreso: octubre-2007
Ubicación: Madrid
Mensajes: 831
Antigüedad: 16 años, 6 meses
Puntos: 48
Respuesta: ¿Cual es mi eroor de sintaxis? en Motor de busqueda

En tu script buscar.php debes cambiar la linea

Código HTML:
<input type="submit" value="search" name="search"> 
por

Código HTML:
<input type="submit" value="search"> 
No puedes dar a dos elementos de formulario el mismo name.

Saludos!
__________________
El problema de nuestra época consiste en que sus hombres no quieren ser útiles sino importantes.

Winston Churchill
  #13 (permalink)  
Antiguo 15/05/2010, 07:24
Avatar de salvador86  
Fecha de Ingreso: enero-2008
Ubicación: Guadalajara- Mexico
Mensajes: 467
Antigüedad: 16 años, 3 meses
Puntos: 2
Respuesta: ¿Cual es mi error de sintaxis? en Motor de busqueda

Hola, voy a poner el código enumerado para que se entienda mejor mi pregunta

este es la página que tiene la caja de texto de busqueda buscar.php
Código HTML:
<html>
<form action="search.php" method="get">
<font face="Arial" size="5">
<center>
Busqueda interna<br />
<input type="text" size="50" name="search">
<input type="submit" value="search">
</center>
</font>
</form>
</html> 
este es la página que tiene las consulta y que realiza la busqueda search.php
Código PHP:
<?php
$button 
$_GET ['submit'];
$search $_GET ['search'];

if (!
$search)
    echo
"Ingrese el texto a buscar";
else{
    if (
strlen($search)<=3)
        echo 
"El texto es demasiado corto";
    else{
        echo 
"Ha buscado <b>$search</b> <hr size='1' color='blue'>";

mysql_connect("localhost","pyminsta_usearch","circuito17");
mysql_select_db("pyminsta_search");

$search_exploded explode(" "$search);

foreach(
$search_exploded as $search_each){
    
$x++;
    if (
$x==1)
    
$construct .= "keywords LIKE '%$search_each%'";
    else
    
$construct .= "keywords LIKE '%%$search_each'";  
}

$construct "SELECT * FROM searchengine $construct";
$run mysql_query($construct);
$foundnum mysql_num_rows($run);//ESTA ES LA LÍNEA 28

if ($foundnum==0)
echo 
"No hay resultado de la busqueda";
else
{
    echo 
"$foundnum results found.<p>";
    
    while (
$runrows mysql_fetch_assoc($run))
    {
    
$title $runrows['title'];
    
$desc $runrows['description'];
    
$url $runrows['url'];
    echo 
"
    <br />
    <b><a href='$url'>$title</a></b><p>
    $desc<br />__________________________"
;
}
}
}
}
?>
Y en la base de datos que yo he creado "pyminsta_search" he creado una tabla "searchengine" con 5 campos (id, title, description, url, keywords) en una fila en en el campo keywords coloque la palabra videos asi que deberia hacerse la busqueda pero no sale.

Me bota error en la línea 28 de search.php y dice lo siguiente

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/pyminsta/public_html/search.php on line 28

Etiquetas: motor, sintaxis, busquedas
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:22.