elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Recuerda que debes registrarte en el foro para poder participar (preguntar y responder)


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  No se como hacer esto
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: No se como hacer esto  (Leído 2,206 veces)
octavioxd

Desconectado Desconectado

Mensajes: 52



Ver Perfil
No se como hacer esto
« en: 1 Marzo 2010, 07:16 am »

Hola magos de la informatica como andan? ;D
bueno les traigo otro desafio como siempre resulta que tengo que hacer un buscador
en php para buscar temas en un foro pero el problema esta aqui
yo necesito hacer un

SELECT *FROM post
WHERE
post_key LIKE "$ARRAY1"
OR
post_key LIKE "$ARRAY2"

y quiero que la consulta se haga dependiendo de los de los arays de la funcion explode separados por espacioo osea si escriben en el buscador lamborghini reventon
quiero que
post_key LIKE 'lamborghini"
or
post_key LIKE "Reventon"

entienden masomenos lo que yo quiero hacer es construir la consulta dependiendo de los arrays que tenga.
desde ya muchas gracias a todos ojala me lo solucionen! ;D


En línea

~ Yoya ~
Wiki

Desconectado Desconectado

Mensajes: 1.125



Ver Perfil
Re: No se como hacer esto
« Respuesta #1 en: 1 Marzo 2010, 17:16 pm »

cuando lo dividas puedes hacer un incremento, osea el resultado te quedara asi:

Código:
trozo[0]
trozo[1]
puedes hacer dos cosas, contrar los elemento que contiene el array, o usar un for.


En línea

Mi madre me dijo que estoy destinado a ser pobre toda la vida.
Engineering is the art of balancing the benefits and drawbacks of any approach.
RickyNice

Desconectado Desconectado

Mensajes: 6


Ver Perfil
Re: No se como hacer esto
« Respuesta #2 en: 14 Marzo 2010, 02:15 am »

Me agrada la posibilidad anterior, me gustaria aplicar un splitazo sobre elemento contenido en la lista:

ListaVacia=String.split(" ")

llenando una lista vacia por resultado que verifique si alguno de los elementos corresponde al buscado en un ciclo for:

len(ListaVacia) #para saber si es una o mas palabras las guardadas

y entonces:

for a in ListaVacia:
lo que requieras ejecutar...

pero depende obviamente de como tengas organizada tu informacion, igual te es mas sencillo cargar un "trozo" por cada palabra desde la captura...







En línea

WHK
Moderador Global
***
Desconectado Desconectado

Mensajes: 6.589


Sin conocimiento no hay espíritu


Ver Perfil WWW
Re: No se como hacer esto
« Respuesta #3 en: 14 Marzo 2010, 05:07 am »

Código
  1. <?php
  2. $datos = 'test1 test2 test3'; /* String */
  3. $datos = explode(' ', $datos); /* Transforma a array */
  4. foreach($datos as $dato){
  5. $data .= "post_key like '%".mysql_real_escape_string(stripslashses(str_replace('%', '\\%', $dato)))."%' or\n";
  6. }
  7. unset($datos);
  8.  
  9. $sql = 'select * from post where '.$data.' 1=2';
  10. ?>

Recuerda ponerle un limit por si el resultado es muy extenso y le creas un paginador.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines