Foros del Web » Programando para Internet » PHP »

devolver casillas activadas en formulario

Estas en el tema de devolver casillas activadas en formulario en el foro de PHP en Foros del Web. A la hora de que un cliente rellena mi formulario, sólo me devuelve la última opción que selecciona y no todas las casillas de verificación ...
  #1 (permalink)  
Antiguo 18/02/2013, 10:52
 
Fecha de Ingreso: diciembre-2012
Ubicación: La Rioja
Mensajes: 5
Antigüedad: 11 años, 11 meses
Puntos: 0
devolver casillas activadas en formulario

A la hora de que un cliente rellena mi formulario, sólo me devuelve la última opción que selecciona y no todas las casillas de verificación que marca este es el html:

<input name="Unidades_de_obra" type="checkbox" id="Unidades_de_obra" value="Demoliciones" />Demoliciones<br />
<input name="Unidades_de_obra" type="checkbox" id="Unidades_de_obra2" value="Estructuras" />Estructuras<br />
<input name="Unidades_de_obra" type="checkbox" id="Unidades_de_obra3" value="Saneamiento" />Saneamiento<br />
<input name="Unidades_de_obra" type="checkbox" id="Unidades_de_obra4" value="Albañilería" />Albañilería<br />


el código php:

<?php

$elemail = $_POST['email'];
$encabezado="De: $elnombre<$email>\n";

function form_mail($sPara, $sAsunto, $sTexto, $sDe)

{

$bHayFicheros = 0;

$sCabeceraTexto = "";

$sAdjuntos = "";

if ($sDe)$sCabeceras = "From:".$sDe."\n";

else $sCabeceras = "";

$sCabeceras .= "MIME-version: 1.0\n";

foreach ($_POST as $sNombre => $sValor)

$sTexto = $sTexto."\n".$sNombre." = ".$sValor;

foreach ($_FILES as $vAdjunto)

{

if ($bHayFicheros == 0)

{

$bHayFicheros = 1;

$sCabeceras .= "Content-type: multipart/mixed;";

$sCabeceras .= "boundary=\"--_Separador-de-mensajes_--\"\n";

$sCabeceraTexto = "----_Separador-de-mensajes_--\n";

$sCabeceraTexto .= "Content-type: text/plain;charset=iso-8859-1\n";

$sCabeceraTexto .= "Content-transfer-encoding: 7BIT\n";

$sTexto = $sCabeceraTexto.$sTexto;

}

if ($vAdjunto["size"] > 0)

{

$sAdjuntos .= "\n\n----_Separador-de-mensajes_--\n";

$sAdjuntos .= "Content-type: ".$vAdjunto["type"].";name=\"".$vAdjunto["name"]."\"\n";;

$sAdjuntos .= "Content-Transfer-Encoding: BASE64\n";

$sAdjuntos .= "Content-disposition: attachment;filename=\"".$vAdjunto["name"]."\"\n\n";

$oFichero = fopen($vAdjunto["tmp_name"], 'r');

$sContenido = fread($oFichero, filesize($vAdjunto["tmp_name"]));

$sAdjuntos .= chunk_split(base64_encode($sContenido));

fclose($oFichero);

}

}

if ($bHayFicheros)

$sTexto .= $sAdjuntos."\n\n----_Separador-de-mensajes_----\n";

return(mail($sPara, $sAsunto, $sTexto, $sCabeceras));

}



if (form_mail("[email protected]", "x",

"Los datos introducidos en el formulario son:\n\n", "$elemail"))

echo "Su formulario ha sido enviado con exito <meta http-equiv='refresh' content='2; url=x.html' >";

?>

¿qué hago mal?
  #2 (permalink)  
Antiguo 18/02/2013, 11:26
 
Fecha de Ingreso: abril-2012
Mensajes: 590
Antigüedad: 12 años, 7 meses
Puntos: 58
Respuesta: devolver casillas activadas en formulario

Prueba poniendo esto al principio de la página donde envías el formulario y creo que lo verás claro:

Código PHP:
Ver original
  1. echo "<pre>";
  2. var_dump($_POST['Unidades_de_obra']);


saludos
  #3 (permalink)  
Antiguo 18/02/2013, 12:19
 
Fecha de Ingreso: diciembre-2012
Ubicación: La Rioja
Mensajes: 5
Antigüedad: 11 años, 11 meses
Puntos: 0
Respuesta: devolver casillas activadas en formulario

sigo recibiendo sólo la última casilla de verificación y no todas las que se marca

Etiquetas: devolver, formulario, html
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 22:31.