Foros del Web » Programando para Internet » PHP »

Checkbox en formulario php

Estas en el tema de Checkbox en formulario php en el foro de PHP en Foros del Web. Buenas, resulta que estoy creando un formularo en php el cual tiene unos checkbox que el cliente tiene que seleccionar y yo quiero recibir por ...
  #1 (permalink)  
Antiguo 03/08/2011, 06:07
 
Fecha de Ingreso: marzo-2010
Mensajes: 8
Antigüedad: 14 años, 1 mes
Puntos: 0
Checkbox en formulario php

Buenas, resulta que estoy creando un formularo en php el cual tiene unos checkbox que el cliente tiene que seleccionar y yo quiero recibir por mail sólo los que ha selecionado. No lo recibo de ninguna manera....o recibo sólo el último clicado o la palabra array...

actualmente lo tengo así:

Seleccione por lo menos una marca:<br />
<input type="checkbox" name="intereses[]" id="Seat" value="Seat" />
Seat</p>
<p>
<input type="checkbox" name="intereses[]" id="Fiat" value="Fiat" />
Fiat<br />
<input type="checkbox" name="intereses[]" id="Opel" value="Opel" />
Opel<br />

y...

$intereses = $_POST['intereses'];


no hay forma...lo he probado con foreach y demás sistemas....

a ver si me podéis ayudar


Muchas gracias por adelantado
  #2 (permalink)  
Antiguo 03/08/2011, 07:09
Avatar de vgonga1986  
Fecha de Ingreso: marzo-2008
Ubicación: País de Pandereta
Mensajes: 1.021
Antigüedad: 16 años, 1 mes
Puntos: 253
Respuesta: Checkbox en formulario php

Haz un var_dump($_POST['intereses']) y tendrás una idea de cómo te llegan los datos.

Si sigues teniendo problemas, avisa. Un saludo.
__________________
¿Alguna pregunta, duda, acotación, nota, cuestión, reparo, comentario, demanda, crítica, interpretación, objeción, interrogante, discrepancia, observación, réplica, disquisición, apostilla o exégesis?
  #3 (permalink)  
Antiguo 03/08/2011, 07:16
Avatar de iviamontes  
Fecha de Ingreso: enero-2011
Ubicación: $cubano->Arg->Mendoza
Mensajes: 1.184
Antigüedad: 13 años, 3 meses
Puntos: 209
Respuesta: Checkbox en formulario php

mira para los checkbox esto es lo que yo hago

<input type="checkbox" name="checkboxGroup1" value="valir 1" id="CheckboxGroup1_1" />
<input type="checkbox" name="checkboxGroup2" value="valor 2" id="CheckboxGroup1_2" />
<input type="checkbox" name="checkboxGroup3" value="valor 3" id="CheckboxGroup1_3" />


Código PHP:
foreach($_POST as $campo=>$value )
        if (
substr($campo013) == 'checkboxGroup')
            
//aca hago lo que quiero hacer con los marcados, estarán solo los marcados 
esto es solo un ejemplo
__________________
aconcaguaestudio.com
  #4 (permalink)  
Antiguo 03/08/2011, 07:18
Avatar de dmm84  
Fecha de Ingreso: marzo-2011
Mensajes: 164
Antigüedad: 13 años, 1 mes
Puntos: 13
Respuesta: Checkbox en formulario php

en vez de un foreach prueba con esto:
Código PHP:
Ver original
  1. $intereses = $_POST['intereses'];
  2. for($i = 0; $i < count($intereses); $i++) {
  3.     print $i ." - ". $intereses[$i] ."<br>";
  4. }
__________________
Mas vale un codigo que mil palabras
  #5 (permalink)  
Antiguo 03/08/2011, 11:17
Avatar de iviamontes  
Fecha de Ingreso: enero-2011
Ubicación: $cubano->Arg->Mendoza
Mensajes: 1.184
Antigüedad: 13 años, 3 meses
Puntos: 209
Respuesta: Checkbox en formulario php

Cita:
Iniciado por dmm84 Ver Mensaje
en vez de un foreach prueba con esto:
Código PHP:
Ver original
  1. $intereses = $_POST['intereses'];
  2. for($i = 0; $i < count($intereses); $i++) {
  3.     print $i ." - ". $intereses[$i] ."<br>";
  4. }
que diferencia hay entre un for y un foreach ????
__________________
aconcaguaestudio.com
  #6 (permalink)  
Antiguo 03/08/2011, 11:19
Avatar de Patriarka  
Fecha de Ingreso: enero-2011
Ubicación: Moreno, Buenos Aires, Argentina
Mensajes: 2.851
Antigüedad: 13 años, 2 meses
Puntos: 288
Respuesta: Checkbox en formulario php

el foreach se creo para recorrer arrays facilmente, esto no quita usar for o while para recorrerlos
  #7 (permalink)  
Antiguo 03/08/2011, 11:42
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 12 años, 9 meses
Puntos: 793
Respuesta: Checkbox en formulario php

Yo también te dejo mi ejemplo:

Código HTML:
Ver original
  1. Seleccione por lo menos una marca:<br />
  2. <form action="prueba.php" method="post">
  3. <input type="checkbox" name="intereses[]" id="Seat" value="Seat" /> Seat<br />
  4. <input type="checkbox" name="intereses[]" id="Fiat" value="Fiat" /> Fiat<br />
  5. <input type="checkbox" name="intereses[]" id="Opel" value="Opel" /> Opel<br /><br />
  6. <input type="submit" value="Enviar" />
  7. </form>

Código PHP:
Ver original
  1. <?php
  2.  
  3. $marcas = (isset($_POST['intereses'])) ? $_POST['intereses'] : '';
  4.  
  5. if (is_array($marcas)) {
  6.     echo implode(', ', $marcas);
  7. } else if ($marcas == '') {
  8.     echo 'Ninguna marca seleccionada';
  9. } else {
  10.     echo $marcas;
  11. }
  #8 (permalink)  
Antiguo 04/08/2011, 05:57
 
Fecha de Ingreso: marzo-2010
Mensajes: 8
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: Checkbox en formulario php

Gracias por las repuestas pero ninguna funciona.
Me sale en el mensaje de agredecimiento una vez enviado el formulario, no se como hacerlo...
  #9 (permalink)  
Antiguo 04/08/2011, 05:59
 
Fecha de Ingreso: marzo-2010
Mensajes: 8
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: Checkbox en formulario php

Os adjunto el código de envío

Código PHP:
<?php
                 $error    
''// error message
                 
$empresa     ''// sender's name
                 
$contacto     ''// sender's empresa
                 
$responsable     ''// sender's tel
                 
$direccion    ''// sender's email address
                 
$codigo  ''// subject
                 
$poblacion  ''// the message itself
                    
$pais ''// Spam check
                 
$telefono ''// Todas las marcas
                 
$web ''// Todas las marcas
                 
$mail ''// Todas las marcas
                 
$todas ''// Todas las marcas
                 
$industriales ''// Todas las marcas
                 
$marcas ''// Todas las marcas
                 
$idioma ''// Todas las marcas

            
if(isset($_POST['send']))
            {
                 
$empresa     $_POST['empresa'];
                 
$contacto    $_POST['contacto'];
                 
$responsable     $_POST['responsable'];
                 
$direccion    $_POST['direccion'];
                 
$codigo  $_POST['codigo'];
                 
$poblacion  $_POST['poblacion'];
                 
$pais  $_POST['pais'];
                 
$telefono  $_POST['telefono'];
                 
$web  $_POST['web'];
                 
$mail  $_POST['mail'];
                 
$todas  $_POST['todas'];
                 
$industriales  $_POST['industriales'];        
 
$marcas = (isset($_POST['intereses'])) ? $_POST['intereses'] : '';
 
if (
is_array($marcas)) {
    echo 
implode(', '$marcas);
} else if (
$marcas == '') {
    echo 
'Ninguna marca seleccionada';
} else {
    echo 
$marcas;
}

                 
$idioma  $_POST['idioma'];
                 

                if(
trim($empresa) == '')
                {
                    
$error '<div class="errormsg">Introduzca la empresa.</div>';
                }
                else if(
trim($contacto) == '')
                {
                    
$error '<div class="errormsg">Introduzca la persona de contacto.</div>';
                }
                else if(
trim($responsable) == '')
                {
                    
$error '<div class="errormsg">Introduzca su función.</div>';
                }
                    else if(
trim($direccion) == '')
                {
                    
$error '<div class="errormsg">Introduzca la dirección.</div>';
                }
                else if(
trim($codigo) == '')
                {
                    
$error '<div class="errormsg">Introduzca su código postal.</div>';
                }
                else if(
trim($poblacion) == '')
                {
                    
$error '<div class="errormsg">Introduzca su poblacion.</div>';
                }
                else if(
trim($pais) == '')
                {
                    
$error '<div class="errormsg">Introduzca su país.</div>';
                }
                else if(
trim($telefono) == '')
                {
                    
$error '<div class="errormsg">Introduzca su teléfono.</div>';
                }
                
              
                else if(!
isEmail($mail))
                {
                    
$error '<div class="errormsg">Introduzca correctamente su mail.</div>';
                }
                else if(
trim($idioma) == '')
                {
                    
$error '<div class="errormsg">Selecione idioma.</div>';
                }
                
                
                if(
$error == '')
              
                {
                    if(
get_magic_quotes_gpc())
                    {
                        
$message stripslashes($message);
                    }

                    
// the email will be sent here
                    // make sure to change this to be your e-mail
                    
$to      "[email protected]";

                    
// the email subject
                    // '[Contact Form] :' will appear automatically in the subject.
                    // You can change it as you want

                    
$subject '[Formulario de registro Weiderauto] : ' $subject;

                    
// the mail message ( add any additional information if you want )
                    
$msg     "Concesionario: $empresa \r\n\nPersona de contacto : $contacto \r\n\nFunción : $responsable \r\n\nDirección : $direccion \r\n\nCódigo Postal : $codigo \r\n\nPoblación : $poblacion\r\n\nPaís: $pais \r\n\nTeléfono: $telefono\r\n\nWeb: $web \r\n\nE-mail: $mail  \r\n\n\n Idioma: $idioma\r\n\n\n\nTodas las marcas: $todas\r\nVehículos industriales: $indsutriales\r\nMarcas: $marcas
 \r\n\n"
;

                    
mail($to$subject$msg"From: $email\r\nReply-To: $email\r\nReturn-Path: $email\r\n");
            
?>
  #10 (permalink)  
Antiguo 04/08/2011, 05:59
Avatar de vgonga1986  
Fecha de Ingreso: marzo-2008
Ubicación: País de Pandereta
Mensajes: 1.021
Antigüedad: 16 años, 1 mes
Puntos: 253
Respuesta: Checkbox en formulario php

Reitero:

Cita:
Iniciado por vgonga1986 Ver Mensaje
Haz un var_dump($_POST['intereses']) y tendrás una idea de cómo te llegan los datos.

Si sigues teniendo problemas, avisa. Un saludo.
Si no entiendes lo que sale, pégalo aquí y te orientamos.

Un saludo.
__________________
¿Alguna pregunta, duda, acotación, nota, cuestión, reparo, comentario, demanda, crítica, interpretación, objeción, interrogante, discrepancia, observación, réplica, disquisición, apostilla o exégesis?

Etiquetas: checkbox, formulario
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 06:45.