Ir al contenido


Foto

VideoTutorial 13 del Curso de PHP POO - Buscador


  • Por favor identifícate para responder
6 respuestas en este tema

#1 pedro1958

pedro1958

    Newbie

  • Miembros
  • Pip
  • 9 mensajes

Escrito 02 junio 2013 - 03:24

realice el buscador, al pasar a las paginas siguientes de resultado de la busqueda, la palabra pasada por get se pierde.

este es el código html

<div id="buscador">
<form name="form" action="resultado.php" method="get">
    <input type="text" name="s" />
    <a href="javascript:void(0)" title="Buscar" onclick="document.form.submit();">
    <img src="ima/find48x48_2.png" width="16" height="16"></a>
</form>
</div>


este es el código php


    public function get_resultado_busqueda($inicio)
    {
$sql = "SELECT * FROM noticias
WHERE
titulo LIKE '%".$_GET['s']."%'
OR
detalle LIKE '%".$_GET['s']."%'
ORDER BY id DESC
LIMIT $inicio,10";
/*echo "$sql<br>";*/
$res = mysql_query($sql,Conectar::con());
while($reg = mysql_fetch_assoc($res))
{
    $this->buscar[] = $reg;
}
return $this->buscar;
    }


gracias


  • 0

#2 poliburro

poliburro

    Advanced Member

  • Administrador
  • 4.945 mensajes
  • LocationMéxico

Escrito 04 junio 2013 - 07:24

No entiendo bien tu problema amigo. Te lanza algún error el navegador? o a que te refieres con que se pierde la palabra?

Podrías explicarnos un poco más?

saludos
  • 0

#3 pedro1958

pedro1958

    Newbie

  • Miembros
  • Pip
  • 9 mensajes

Escrito 04 junio 2013 - 10:30

los errores son los siguientes, mostrado al inicio de cada nueva página de la busqueda:
1) Notice: Undefined index: s in C:\wamp\www\php_poo_cc\video13\class\class.php on line 133
2) Notice: Undefined index: s in C:\wamp\www\php_poo_cc\video13\class\class.php on line 135
el escript anterior se  encuentra entre las líneas 129 y 145
gracias

  • 0

#4 poliburro

poliburro

    Advanced Member

  • Administrador
  • 4.945 mensajes
  • LocationMéxico

Escrito 04 junio 2013 - 11:58

veo que el formulario manda la info a resultado.php pero el error lo marca en class.php...

como está recibiendo resultado.php la info de get y como se lo pasa a class?
  • 0

#5 pedro1958

pedro1958

    Newbie

  • Miembros
  • Pip
  • 9 mensajes

Escrito 04 junio 2013 - 04:27

El valor contenido en el array GET se lo paso directamente al metodo que realiza la busqueda de la clase.
gracias
  • 0

#6 pedro1958

pedro1958

    Newbie

  • Miembros
  • Pip
  • 9 mensajes

Escrito 06 junio 2013 - 10:27

resuelto el problema que presente solicitando ayuda
de la siguiente manera:
antes de construir las clases active la matriz session y luego la utilice en el metodo, esta es la solución php:

    public function get_resultado_busqueda($inicio)
    {
if(isset($_GET['s']))
{
    $s = $_GET['s'];
    $_SESSION['s'] = $_GET['s'];
}
else
{
    $s = $_SESSION['s'];
}
$sql = "SELECT * FROM noticias
WHERE
titulo LIKE '%".$s."%'
OR
detalle LIKE '%".$s."%'
ORDER BY id DESC
LIMIT $inicio,10";
/*echo "$sql<br>";*/
$res = mysql_query($sql,Conectar::con());
while($reg = mysql_fetch_assoc($res))
{
    $this->buscar[] = $reg;
}
return $this->buscar;
    }
gracias

  • 0

#7 poliburro

poliburro

    Advanced Member

  • Administrador
  • 4.945 mensajes
  • LocationMéxico

Escrito 06 junio 2013 - 11:59

gracias por compartir la solución. Saludos
  • 0




IP.Board spam blocked by CleanTalk.