Foros del Web » Programando para Internet » PHP »

Comparar varios contra uno

Estas en el tema de Comparar varios contra uno en el foro de PHP en Foros del Web. Saludos. Tengo en un campo de la db varios valores: 1,2,3 ahora quiero compara esos valores y preguntar si dentro de ese campo esta por ...
  #1 (permalink)  
Antiguo 20/05/2003, 13:29
Avatar de joseisrael  
Fecha de Ingreso: noviembre-2002
Ubicación: Maracay, Edo. Aragua
Mensajes: 221
Antigüedad: 15 años
Puntos: 1
Pregunta Comparar varios contra uno

Saludos.

Tengo en un campo de la db varios valores:

1,2,3

ahora quiero compara esos valores y preguntar si dentro de ese campo esta por ejemplo el "1" me de x salida.

ej:

Código PHP:
if ($db->f('campo_DB') == "1") {
echo 
"A";

La cosa es que nunca sera == porque ese campo tiene varios valores.

Cómo puedo preguntar eso ?

Gracias
__________________
Aprender Siempre. Lema de Vida

José Molina
  #2 (permalink)  
Antiguo 20/05/2003, 14:08
Avatar de josgat  
Fecha de Ingreso: noviembre-2002
Mensajes: 137
Antigüedad: 15 años
Puntos: 0
Buenas, podías especificar un poco más....por ejemplo, ese campo de tu bd de que tipo es?un set? y que gastas, mysql?

Pues es....concreta un poco más.

ADEU
__________________
Lo importante no es saber sino saber el teléfono del que sabe, jajaja.
  #3 (permalink)  
Antiguo 20/05/2003, 14:17
Avatar de joseisrael  
Fecha de Ingreso: noviembre-2002
Ubicación: Maracay, Edo. Aragua
Mensajes: 221
Antigüedad: 15 años
Puntos: 1
Saludos.

En un varchar, mysql, php

y más nada? que más quieres saber???

Todo debe funcionar dentro del IF, no consultas.

Gracias
__________________
Aprender Siempre. Lema de Vida

José Molina
  #4 (permalink)  
Antiguo 20/05/2003, 14:46
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
Hola,

Por lo que pones el significado del campo es que s una lista de cosas. Por lo que creo que lo que mas logico es usar un array. Para crear el array usamos explode . Tras esto miramos si el valor existe en el array con in_array() . El codigo seria algo asi:
Código PHP:
$lista_valores=explode(',',$db->f('campo_DB'));
if (
in_array('1',$lista_valores)) {

echo 
"A";


(espero no haberme comido ningun parentesisi). Esto es si el separador de los valores del campo es ',', si es otro modifica el explode().

Espero haber sido de ayuda.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #5 (permalink)  
Antiguo 20/05/2003, 15:23
Avatar de joseisrael  
Fecha de Ingreso: noviembre-2002
Ubicación: Maracay, Edo. Aragua
Mensajes: 221
Antigüedad: 15 años
Puntos: 1
Saludos.

Extraordinaria solución josemi

gracias
__________________
Aprender Siempre. Lema de Vida

José Molina
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 02:43.