Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Seleccionar multiples checkbox en php y enviar por mail

Estas en el tema de Seleccionar multiples checkbox en php y enviar por mail en el foro de PHP en Foros del Web. Hola! Soy nuevo en el foro, disculpen si el tema no es el correcto o no va en el sector indicado. Queria hacer los siguiente: ...
  #1 (permalink)  
Antiguo 03/02/2015, 23:07
 
Fecha de Ingreso: febrero-2015
Mensajes: 3
Antigüedad: 9 años, 2 meses
Puntos: 0
Seleccionar multiples checkbox en php y enviar por mail

Hola!

Soy nuevo en el foro, disculpen si el tema no es el correcto o no va en el sector indicado.

Queria hacer los siguiente:

Tengo una web en donde el usuario tiene la posibilidad, mediante checkbok de elegir las marcas que le interesa y mandar una unica consulta. Yo quiero que esa consulta, me llegue a mi(propietario de la web). Osea quiero ver por ejemplo:

-Usuario "X" selecciono:
adidas
nike

mensaje: hola me interesan sus zapatillas. saludos.

Yo como propietario de web quiero ver eso y despues yo le envio a adidas y a nike el mensaje.

El problema es el siguiente:

-Cuando lo hago en el localhost (wampserver), me funciona perfecto me salen los checkbox que seleciono y el mensaje todo bien. Ahora cuando lo subo a mi servidor, para que me llegue al mail solamente me llega la última opción de checkbox que seleccion no adidas y nike, solo la última que haya seleccionado.

Si me podrias decir en que me estoy equivocando o que me falta, les agradeceria.

Dejo el codigo:

edicion.html

<form action="checkbox.php" method="POST">
<div>
<img src="marcas/nike.png" width=200px height=100px/>
<input type="checkbox" name="marcas[]" value="nike"/>
</div>
<div>
<img src="marcas/adidas.jpg" width=200px height=100px/>
<input type="checkbox" name="marcas[]" value="adidas"/>
</div>
<div>
<img src="marcas/reebook.jpg" width=200px height=100px/>
<input type="checkbox" name="marcas[]" value="rebook"/>
</div>
<textarea name="consulta"></textarea>
<input type="submit">
</form>


checkbox.php

<?php
ini_set('display_errors',1);
if (!empty ($_POST['marcas']) AND !empty($_POST['consulta'])){
$to ="[email protected]";
$headers = "Content-Type: text/html; charset=iso-8859-1\n";
$headers .= "From:".$_POST['marcas']."\r\n";
$tema="Contacto desde el Sitio Web";

$marca_select = $_POST["marcas"];
$cantidad =count($marca_select);
echo $cantidad;

foreach($marca_select as $marcas){
echo $marcas;
}

$consulta=$_POST['consulta'];

$mensaje="
<p>Marcas seleccionadas:</p></br>
$marcas.<br>

$consulta.<br>


";
@mail($to,$tema,$mensaje,$headers);
echo "Su mensaje ha sido enviado.<br />";
} else {
echo "No se puede enviar el formulario, verifica los campos";
}



?>
  #2 (permalink)  
Antiguo 04/02/2015, 01:38
 
Fecha de Ingreso: septiembre-2014
Mensajes: 180
Antigüedad: 9 años, 7 meses
Puntos: 14
Respuesta: Seleccionar multiples checkbox en php y enviar por mail

En un trozo de tu código no guardas el contenido de las marcas, si no que lo muestras por pantalla. Prueba a ver con esto a ver si te funciona:

Código PHP:
Ver original
  1. foreach($marca_select as $marcas){
  2. $textoMarcas.= $marcas."<br />";
  3. }
  4.  
  5. $consulta=$_POST['consulta'];
  6.  
  7. $mensaje="
  8. <p>Marcas seleccionadas:</p></br>
  9. $textoMarcas.<br>
  10.  
  11. $consulta.<br>"
__________________
Unelink.es - VPS, servidores dedicados, hosting y dominios. 10 años a tu lado.
  #3 (permalink)  
Antiguo 04/02/2015, 15:00
 
Fecha de Ingreso: noviembre-2014
Mensajes: 5
Antigüedad: 9 años, 5 meses
Puntos: 0
Respuesta: Seleccionar multiples checkbox en php y enviar por mail

mira este codigo yo acabo de crear un formulario con checkbox.

aqui va el HTML
Código HTML:
<div id="contact" class="spacer">
   
    <div class="container contactform center">
        
            <div class="row ">   
                 <h2 class="text-center wowload fadeInDownBig ">Servir para ganar</h2>
                <div class="col-sm-6  col-xs-12">      
        <form id="main-contact-form" class="contact-form row wowload fadeInLeftBig" name="contact-form" action="send-mail.php" method="post">
	    				<h2 class="title text-center">Suscribase</h2>
	    				<div class="status alert alert-success" style="display: none"></div>
				    	
				            <div class="form-group ">
				                <input type="text" name="sender_name" class="form-control" required="required" placeholder="Nombre">
				            </div>
                            <div class="form-group ">
				                <input type="text" name="sender_lastname" class="form-control" required="required" placeholder="Apellido">
				            </div>
				            <div class="form-group ">
				                <input type="email" name="sender_email" class="form-control" required="required" placeholder="Email">
				            </div>
            
                            <div class="form-group ">
                            <label for="field_message">Mensaje</label>
	                           <textarea id="field_message" name="sender_message"></textarea>
	
            </div>            
                              
				   
                    
                            <p >Opciones</p>
            
                            <div class="checkbox checkbox-success">
                            <input id="check_1" type="checkbox" name="checkbox_group_1[]" value="Opcion1">
	                        <label for="check_1">Opci&oacute;n uno</label>
                            </div>
            
                            <div class="checkbox checkbox-success">
	                        <input id="check_2" type="checkbox" name="checkbox_group_1[]" value="Opcion2">
	                        <label for="check_2">Opci&oacute;n dos</label>
                            </div>
	                        
                            <div class="checkbox checkbox-success">
	                        <input id="check_3" type="checkbox" name="checkbox_group_1[]" value="Opcion3">
	                        <label for="check_3" >Opci&oacute;n tres</label>
                            </div>
            
            
            
            		            <div class="form-group ">
				                <input type="submit" name="submit" class="btn btn-primary pull-right" value="Enviar">
				            </div>
	    			</form>
                   
      </div>
                 <div class="col-sm-6  col-xs-12 wowload fadeInRightBig" >      
        <h3 class="text-center"></h3>
           
          <h4>Fecha:</h4> Marzo de 2015
             <br>
                     <br>
           <h4>Modalidad:</h4>Presencial -- (Sal&oacute;n por confirmar)
                     <br>
                     <br>
           <h4>Hora:</h4>07:30 pm (Col)
           
      </div>
</div>
       
      
</div>
<!--Contact Ends-->


    </div> 
aqui va el PHP
Código PHP:
<?php
    $mail_to 
'ESCRIBE TU DIRECCION DE CORREO AQUI'

    
// asignando data from $_POST array a variables
    
$name $_POST['sender_name'];
    
$lastname $_POST['sender_lastname'];
    
$mail_from $_POST['sender_email'];
    
$message $_POST['sender_message'];
    

    
$host_plan $_POST['radio_group_1'];
    
$additional_options implode(' | '$_POST['checkbox_group_1']);
    
$host_period $_POST['dropdown'];
    
    
// construyendo el asunto del email
    
$subject 'Suscripcion para conferencia aman_' $name;

    
// Construyendo el cuerpo del email
    
$body_message 'Nombre: ' $name "\r\n";
    
$body_message .= 'Apellido: ' $lastname "\r\n";
    
$body_message .= 'E-mail: ' $mail_from "\r\n";
    
$body_message .= 'Message: ' $message;
    
    
$body_message .='El usuario selecciono: ' $additional_options "\r\n";
        

    
//Construyendo la el header del mensaje
    
$headers 'From: ' $mail_from "\r\n";
    
$headers .= 'Reply-To: ' $mail_from "\r\n";

    
$mail_sent mail($mail_to$subject$body_message$headers);

    if (
$mail_sent == true){ ?>
        <script language="javascript" type="text/javascript">
        alert('Tu Suscripcion se ha realizado con exito');
        window.location = 'index.html';
        </script>
    <?php } else { ?>
    <script language="javascript" type="text/javascript">
        alert('No se ha logrado completar el registro por favor intentalo otra vez');
        window.location = 'index.html';
    </script>
    <?php
    
}

?>
espero que te sirva.
  #4 (permalink)  
Antiguo 04/02/2015, 16:04
 
Fecha de Ingreso: febrero-2015
Mensajes: 3
Antigüedad: 9 años, 2 meses
Puntos: 0
Respuesta: Seleccionar multiples checkbox en php y enviar por mail

Muchas Gracias a ambos! Probe el de json y funciono perfecto!.

Tenia la cabeza quemada y no me estaba dando cuenta del error!.

Mil gracias!
  #5 (permalink)  
Antiguo 04/02/2015, 16:07
 
Fecha de Ingreso: febrero-2015
Mensajes: 3
Antigüedad: 9 años, 2 meses
Puntos: 0
Respuesta: Seleccionar multiples checkbox en php y enviar por mail

Funciono, mil gracias!

Etiquetas: checkbox, múltiple
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 13:11.