Foros del Web » Programando para Internet » PHP »

Post de Google

Estas en el tema de Post de Google en el foro de PHP en Foros del Web. Hola a tod@s, Tengo una duda y es que he visto que en muchos lugares (Por ejemplo mi blog ;) cuando llegas desde algún lado ...
  #1 (permalink)  
Antiguo 18/07/2006, 05:37
Avatar de g05l21  
Fecha de Ingreso: mayo-2006
Mensajes: 76
Antigüedad: 17 años, 11 meses
Puntos: 1
Post de Google

Hola a tod@s,

Tengo una duda y es que he visto que en muchos lugares (Por ejemplo mi blog ;) cuando llegas desde algún lado que ha realizado (supongo) un post de una busqueda te remarca las palabras encontradas.

El remarcar las palabras encontradas no creo que sea muy difícil (nunca lo he pensado), pero el que se remarquen las palabras porque las hayas buscado en google por ejemplo, me parece algo más difícil. Supongo que será usando las mismas variables que usa google, pero no tengo ni idea.

Alguien sabe como se podría hacer?¿?

Por ejemplo. Si realizo esta busqueda:
http://www.google.es/search?hl=es&q=...BAsqueda&meta=

Y enlazo al único de la lista:

"...Yo simplemente lloro libertad ...Yo simplemente lloro libertad ...
Basado en la version 4.4 de BSD éste sistema cuenta con la ventaja de ... Empezará instalando el kernel (bsd.rd) y todos los programas necesarios en memoria ...
g05l21.bitacoras.com/archivos/2005/11/26/instalando-openbsd-de-newbie-a-newbie - 48k - Resultado Suplementario - En caché - Páginas similares"

La palabra BSD sale resaltada en rojo.

Alguién me podría resolver la duda de como hacer esto¿?

Gracias de antemano.
__________________
.-. GeL/T0 .-. Quieres saber mas de mi? lee mi blog: http://g05l21.net
  #2 (permalink)  
Antiguo 18/07/2006, 06:44
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 20 años, 7 meses
Puntos: 41
Si sabes hacerlo para una búsqueda interna, esto no será tan difícil.
Saber el url desde donde se enlazó a tu página es sencillo. Ese valor está en la variable $_SERVER['HTTP_REFERER']. Es una variable que no siempre está disponible, así que esto se puede hacer sólo cuando se tenga acceso al referrer.

Después de eso, si la pasas por una función como parse_url().
Código PHP:
$url_parseada parse_url($_SERVER['HTTP_REFERER']); 
Tendrás un array con la url separada en sus componentes:
Código PHP:
$url_parseada['host'// en esta variable puedes buscar si existe la cadena 'google', por ejemplo.
$url_parseada['path'//aca debería tener algo como '/search'
$url_parseada['query'// acá vienen todas las variables. Esto no debería estar vacío. 
Si se cumple lo anterior, buscas en el query la variable "q" (que es donde vienen las palabras buscadas).
Para esto puedes hacer un simple explode(), o utilizar parse_str()
Código PHP:
parse_str($url_parseada['query'], $urlvars);

// Ahora, si existe $urlvars['q']... esas son nuestras palabras de búsqueda. 
Espero se haya entendido.

Sobre el uso de parse_url() o parse_str(), sigue los enlaces y en manual verás buenos ejemplos.

Saludos
  #3 (permalink)  
Antiguo 18/07/2006, 06:54
Avatar de g05l21  
Fecha de Ingreso: mayo-2006
Mensajes: 76
Antigüedad: 17 años, 11 meses
Puntos: 1
Jajaja,

Vale, cuando lo tenga lo pondré.... Yo que quería librarme de currarmelo :-p

Algo de eso había estado mirando, la verdad, pero quería saber si alguien lo tenía implementado, ya que hay muchos sitios que te lo hacen.

Aun así, gracias. Cuando lo tenga lo pondré por acá...

... Y si alguien lo tiene y me ahorra el reinventar la rueda....jejejeje
__________________
.-. GeL/T0 .-. Quieres saber mas de mi? lee mi blog: http://g05l21.net
  #4 (permalink)  
Antiguo 18/07/2006, 07:08
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 20 años, 7 meses
Puntos: 41
Bueno... por cómo escribiste tu post inicial y diciendo "Alguien sabe como se podría hacer?¿?", no parecía que estabas pidiendo un script hecho, sino que querías orientación.
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 10:44.