Foros del Web » Programando para Internet » PHP »

recoger valores checkbox

Estas en el tema de recoger valores checkbox en el foro de PHP en Foros del Web. Buenas!! Estoy montando un formulario donde hay 5 campos tipo checkbox con diferentes nombres, y la idea es que estos hagan de filtro para una ...
  #1 (permalink)  
Antiguo 26/05/2009, 09:05
 
Fecha de Ingreso: enero-2008
Ubicación: Manresa
Mensajes: 24
Antigüedad: 16 años, 2 meses
Puntos: 0
recoger valores checkbox

Buenas!!

Estoy montando un formulario donde hay 5 campos tipo checkbox con diferentes nombres, y la idea es que estos hagan de filtro para una consulta en mysql.

Estos checkbox pueden o no ir informados, con lo que se tendria que controlar su valor y una vez verificados, almacenar su valor en una variable, que despues se pudiese incluir en el WHERE de la consulta.

Me podriais hechar una mano?

Gracias
  #2 (permalink)  
Antiguo 26/05/2009, 09:06
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: recoger valores checkbox

¿Cuál es exactamente la duda?

Con isset() puedes verificar si recibes los datos o no (sólo recibirás los datos de los checkbox que estén marcados)
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #3 (permalink)  
Antiguo 26/05/2009, 09:07
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: recoger valores checkbox

Tu lo que quieres es hacer una busqueda avanzada o algo por el estilo?
  #4 (permalink)  
Antiguo 26/05/2009, 09:17
 
Fecha de Ingreso: febrero-2009
Ubicación: cancun!
Mensajes: 898
Antigüedad: 15 años, 2 meses
Puntos: 15
Respuesta: recoger valores checkbox

select * from tabla where campo=$check, campo2=$check2

obvio antes tendras q hacer algoaso
$check=$_post['nobrecheck'];
saludines!!
__________________
WHERE IS MY BLUE SUNNY SKY??
pd: todos los karmas son bienvenidos :D
  #5 (permalink)  
Antiguo 26/05/2009, 09:21
 
Fecha de Ingreso: octubre-2008
Mensajes: 71
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: recoger valores checkbox

mas menos una idea, puedes agregarle los otros validadores...

Código &lt:
Ver original
  1. $check=array();
  2. if($_POST['direccion'] && $_POST['name'] && $_POST['apell']){
  3. $chek[]=$_POST['direccion'];
  4. $chek[]=$_POST['name'];
  5. $chek[]=$_POST['apell'];
  6. $sec=1;
  7. }else{
  8. $sec=0;
  9. unset($chek);
  10. }
  11.  
  12. if($sec===1){
  13. quer="select * from employes where direcc like'%$chek[0]%' and name like'%$chek[1]%' and apell like'%$chek[2]%'      ";
  14. }
  #6 (permalink)  
Antiguo 26/05/2009, 09:55
 
Fecha de Ingreso: enero-2008
Ubicación: Manresa
Mensajes: 24
Antigüedad: 16 años, 2 meses
Puntos: 0
Respuesta: recoger valores checkbox

casi lo tenemos chicos!!! ;)

exactamente tengo 5 campos checkbox con valores si/no y 2 selects con 2 valores cada uno... y la idea es hacer una select "dinamica", ya que pueden o no venir informados....
Ya he probado a hacerlo con condiciones if{} pero me queda excesivamente largo.... no hay una manera mas "corta" de hacerlo?

ahora lo que tengo es esto... pero me parece un poco "rudimentario", no??

Código PHP:
$cadena "";                
                
                if (isset(
$_POST["federat"])){
                    
$cadena.= "federat = 'SI' AND ";
                }
                if (isset(
$_POST["acompanyant"])){
                    
$cadena.= "acompanyant = 'SI' AND ";
                }
                if (isset(
$_POST["dormir"])){
                    
$cadena.= "dormir = 'SI' AND ";
                }
                if (isset(
$_POST["dormir_ac"])){
                    
$cadena.= "dormir_ac = 'SI' AND ";
                }
                if (isset(
$_POST["info"])){
                    
$cadena.= "info = 'SI' AND ";
                }
                if (isset(
$_POST["talla"])){
                    if (
$talla != "0"){
                        
$cadena.= "talla = '".$talla."' AND ";
                    }
                }
                if (isset(
$_POST["recorregut"])){
                    if (
$talla != "0"){
                        
$cadena.= "recorregut = '".$recorregut."' AND ";
                    }
                }
                echo (
$cadena);


                               
$res2mysql_query("SELECT ".$campst." FROM usuaris WHERE ".$cadena." nom <> 'Admin'"); 

Última edición por OverCrash; 26/05/2009 a las 10:10
  #7 (permalink)  
Antiguo 26/05/2009, 11:33
 
Fecha de Ingreso: octubre-2008
Mensajes: 71
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: recoger valores checkbox

creo que esto es u poco mas elaborado saludos estimado.

sirve para lso chek q desees es cosa de ir agregando al array bidimensional ^^!

Código &lt:
Ver original
  1. $query="select * from employes WHERE ";
  2. $sexo=$_POST['sexo'];//select
  3. //cheks
  4. $Achek[0][0]=$_POST['name'];
  5. $Achek[0][1]="nombre";
  6. $Achek[1][0]=$_POST['direccion'];
  7. $Achek[1][1]="direccion";
  8. $Achek[2][0]=$_POST['pais'];
  9. $Achek[2][1]="pais";
  10. $Achek[3][0]=$_POST['apellido'];
  11. $Achek[3][1]="apellido";
  12. $Achek[4][0]=$_POST['hobbie'];
  13. $Achek[4][1]="hobbie";
  14.  echo $Achek[4][0];
  15. $i=0;
  16. while(count($Achek)>$i){
  17. if($Achek[$i][0])
  18. {
  19. $query.=$Achek[$i][1]."=" ;
  20. $query.="'".$Achek[$i][0]."' and " ;
  21. }
  22. $i++;
  23. }
  24. $query.="sexo=" ;
  25. $query.="'$sexo'" ;
  26. mysql_query($query);
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 07:53.