Foros del Web » Programando para Internet » PHP »

Problema con bucle en evio de checkbox Php

Estas en el tema de Problema con bucle en evio de checkbox Php en el foro de PHP en Foros del Web. Hola, recien estoy empezando ha realizar páginas con Php, por lo que espero me puedan ayudar, resulta que tengo un formulario, este de prueba http://www.peru-expeditions.com/c-prueba.php ...
  #1 (permalink)  
Antiguo 04/08/2009, 11:23
Avatar de salvador86  
Fecha de Ingreso: enero-2008
Ubicación: Guadalajara- Mexico
Mensajes: 467
Antigüedad: 16 años, 3 meses
Puntos: 2
Problema con bucle en evio de checkbox Php

Hola, recien estoy empezando ha realizar páginas con Php, por lo que espero me puedan ayudar, resulta que tengo un formulario, este de prueba http://www.peru-expeditions.com/c-prueba.php que recoge los valores en un ajax que lo valida (pues estoy usando Captcha) y envia los valores del formulario a php que finalmente hace llegar el mensaje a un correo (Ya esta en uso ej: http://www.peru-expeditions.com/c-solicitud.php), pero como ahora quiero poner en el checkbox que si algunos de ellos esten seleccionado se envie en el mensaje sus valores, he probado modificando el código pero aun no lo termino, el problema parece ser el bucle del php. Voy a poner el código para que me puedan asesorar Asi defino lo checkbox en mi formulario.
Código HTML:
<input name="tour[]" type="checkbox" class="stcajatexto" id="tour0" value="Cusco"> 

<input name="tour[]" type="checkbox" class="stcajatexto" id="tour1" value="Arequipa"> etc...
En mi ajax esta funciones validan los valores
Código PHP:
function get(obj) {
            var 
poststr "Nombre=" encodeURIdocument.getElementById("Nombre").value ) +
                                        
"&Correo=" encodeURIdocument.getElementById("Correo").value )+
                                        
"&Otros=" encodeURIdocument.getElementById("Otros").value );
                                for (
i=0i<=3i++){
                                      if (
document.getElementById("tour"+i).checked)
                                            
poststr poststr "&tour[" "] = " encodeURIdocument.getElementById("tour"+i).value );
                                }
                    
poststr poststr "&capt=" encodeURIdocument.getElementById("capt").value )+
                                        
"&Submit=" encodeURIdocument.getElementById("Submit").value );
            
makePOSTRequest('captcha/c-envio-prueba.php'poststr);
        } 
Y mi php que finalmente envia el mensaje
Código PHP:
if(isset($_POST['Submit']) and $capt->check_result()){        
              
$message_send "Mensaje desde la página\n\n      
              Nombre: "
.$_POST['Nombre']." \n
              Correo: "
.$_POST['Correo']." \n
                Otros: "
.$_POST['Otros']." \n"
              
foreach ($_POST['tour'] as $id){
                   echo 
$id."<br>";
                }
                ;

                
$headers .= 'To: <'.$email_recipient.'>' "\r\n";
                
$headers .= 'From: '.$_POST['Nombre'].' <'.$_POST['Correo'].'>' "\r\n"
Les agradecere mucho ayuda, gracias
  #2 (permalink)  
Antiguo 05/08/2009, 10:48
Avatar de salvador86  
Fecha de Ingreso: enero-2008
Ubicación: Guadalajara- Mexico
Mensajes: 467
Antigüedad: 16 años, 3 meses
Puntos: 2
Respuesta: Problema con bucle en evio de checkbox Php

Hola,puedo observar que algunos han leido mi problema, pero nadies comenta, se debe a que el problema es facil de resolver??, pero quisiera un indicio por favor, gracias
  #3 (permalink)  
Antiguo 25/08/2009, 10:32
Avatar de salvador86  
Fecha de Ingreso: enero-2008
Ubicación: Guadalajara- Mexico
Mensajes: 467
Antigüedad: 16 años, 3 meses
Puntos: 2
Respuesta: Problema con bucle en evio de checkbox Php

Bueno, la respuesta a mi pregunta me ayudaron a resolver en este enlace si a alguien le interesa http://www.forosdelweb.com/f18/como-...ox-php-725660/
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 23:59.