Foros del Web » Programando para Internet » PHP »

Recuperar datos de un campo con un array

Estas en el tema de Recuperar datos de un campo con un array en el foro de PHP en Foros del Web. muy buenas, tengo un formulario con select multiple con el cual guardo los datos en una tabla mysql como un array, el problema viene cuando ...
  #1 (permalink)  
Antiguo 14/09/2004, 09:47
 
Fecha de Ingreso: septiembre-2004
Mensajes: 2
Antigüedad: 13 años, 3 meses
Puntos: 0
Recuperar datos de un campo con un array

muy buenas, tengo un formulario con select multiple con el cual guardo los datos en una tabla mysql como un array, el problema viene cuando intento recuperar los datos mediante un buscador, ya que no se como hacer para decirle que busque dentro del array del campo en concreto ya que si observo la tabla desde myadmin veo que en el campo solo aparece "array" y no el resto de datos introducidos, espero haberme explicado.
Basicamente necesito la orden php para que busque dentro del array del campo, o no se si tengo que crear el campo de otra manera diferente.
  #2 (permalink)  
Antiguo 15/09/2004, 20:50
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
El problema es que no has "serializado" tu array obtenido de las N múltiples selecciones que has hecho en tu <select .. multiple> HTML.

De tu <select .. multiple> recibiras un array en PHP .. el cual debes "serializar". Este proceso puedes hacerlo vía la función serialize() o bien con un simple implode() a un caracter dado como separador (coma? .. cualquiera sirve).

Así obtendras en tu campo X esas opciones seleccionadas en forma de un string (cadena) simple con tus opciones separadas por el separador (caracter) que indiques en implode() aplicando un explode() o unserialize() si usastes serialize(). Una vez obtengas el array nuevamente, podrás aplicar funciones de tratamiento de arrays como por ejemplo in_array() para ver si el valor que buscas está en ese "campo" (en realidad ya será ese "array").

Un saludo,
  #3 (permalink)  
Antiguo 16/09/2004, 10:55
 
Fecha de Ingreso: septiembre-2004
Mensajes: 2
Antigüedad: 13 años, 3 meses
Puntos: 0
gracias, asi era, un simple implode() y listo.
Gracias de nuevo
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 08:25.