Por favor para completar el código de formulario en php y checkbox? [Resuelto]

Iniciado por gh1E, 6 Mayo 2013, 23:15 PM

0 Miembros y 1 Visitante están viendo este tema.

gh1E

Saludos amigos;

Comento que estoy ingresando al mundo php, el cual me parece en realidad muy eficaz, ahora una pequeña duda, se que tengo que cambiar algo o añadir pero no se donde ni como.

El código del formulario en html

formulario html

<form name='formulario' id='formulario' method='post' action='envio.php' target='_self' enctype="multipart/form-data" accept-charset="UTF-8">^M
<center>^M
<table>^M
<tr><td><h3>Campos Obligatorios</h3></td></tr>
<tr><td><h5>Nombre:  </h5></td><td><input type='text' name="Nombre" id='Nombre' required="required" autocomplete="off"/>*</td></tr>
<tr><td><h5>Asunto: </h5></td><td><input type='text' name="Asunto" id='Asunto'' required="required" autocomplete="off">*<font size="1" color="red"> Ingresar el asunto que ir&aacute; en el env&iacute;o.</font></td></tr>
<tr><td><h5>Listas a Enviar:  </h5></td></tr>
</tr>
<tr>
<td></td>
<td><font size="2"><input type="checkbox" name="ListaEnviar[]" id="RLegal" value="Socios_RLegal">Rep. Legales</td>
<td><font size="2"><input type="checkbox" name="ListaEnviar[]" id="ARLegal" value="Socios_Asist_RLegal">Asist. Rep. Legales</td>
</tr>
<tr>
<td></td>
<td><font size="2"><input type="checkbox" name="ListaEnviar[]" value="Socios_Ejecutivos">Ejecutivos</td>
<td><font size="2"><input type="checkbox" name="ListaEnviar[]" value="Socios_Miem_Directorio">Miem. de Directorio</td>
</tr>
<tr><td><h5>Imagen:<br>
<font size="1">La imagen debe ser extensi&oacute;n .jpg</font></h5></td>
<td><input type='file' name='Arte' id='Arte'>*<font color="red" size="1">(max. 250 Kb.)</font></td><td></td>
<td></td>
<td></td>
<td><input value="Borrar" type="reset"></td>
<td><center><input type='submit' value='EnviarSolicitud'></center></td></tr>
</table>
</center>
</form>


Ahora el siguiente código lo tome de una web q no recuerdo muy bien, pero hacía lo q necesito, adjuntar un archivo y enviarlo al correo.

Y ese es mi inconveniente como no entiendo muy bien el código pues no sé, donde agregar o más bien donde agregar la opción para que me envíe los checkbox del formulario, por que el original no lo hace.

El código de php
enviar.php

<?php

function form_mail($sPara$sAsunto$sTexto$sDe)^M
{
$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=utf-8\n";
$sCabeceraTexto .= "Content-transfer-encoding: 7BIT\n";

$sTexto $sCabeceraTexto.$sTexto;
}
if (
$vAdjunto["size"] < 500000 )
{

$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($oFicherofilesize($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("pepito@hotmail.com","Evento",
"Los datos introducidos en la solicitud son:\n\n""noreply@hotmail.com"))
?>



Gracias de antemano por toda la ayuda que me puedan brindar, de verdad que estoy un poco perdido con esto.

Salu2

gh13  ::)
Si no lo sabes...averigua...
SEr o nO SeR ...( y eso a quien le importa???)

engel lex

no entiendo el problema...

explica bien que quieres lograr con tu codigo y cual problema te da para lograrlo
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

gh1E

Hola;

Gracias por tu interés el problema es q al momento de ejecutar el "Enviar" del formulario, al correo me llega;

Nombre: Pepito
Asunto: Investigacion
ListaEnviar: Array (Aquí es el problema que no me llega los campos seleccionados si no la palabra "array")

Perdona quizá no me expllque antes muy bien pero justamente no sabría como capturar los datos seleccionados y que eso me envíe al correo.

Saludos.
Si no lo sabes...averigua...
SEr o nO SeR ...( y eso a quien le importa???)

engel lex

si estás viendo lo que te llega usando la funcion "echo" esa funcion solo lee strings y numeros...

si quieres ver el contenido real puedes usar var_dump que imprime la variable que le coloques y su tipo o print_r que hace lo mismo pero mas resumido, usa eso para leer y avisame que conseguiste
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

gh1E

Gracias amigos;

Por la ayuda pero ya encontré la solución y disculpen por haberme enredado en la pregunta inicial, básicamente lo que necesitaba es recoger  los datos de un formulario con selección múltiple y con checkbox, y luego eso enviarme por correo.

Para quién le puede interesar.

El código del formulario.

<html>
td></td>
<td><font size="2"><input type="checkbox" name="Lista_a_Enviar[]"  value="Representantes Legales">Rep. Legales</td>
<td><font size="2"><input type="checkbox" name="Lista_a_Enviar[]"  value="Asistentes de Representantes">Asist. Rep. Legales</td>
</html>



El del php, tan simple como eso


// Se encuentra encerrado entre llaves, por que se mezclaba con mi otro código.
{$listas = '';
foreach($_POST['Lista_a_Enviar'] as $valores){
$listas .= ", ".$valores;
}
}
// Y se agrega la variable $listas al cuerpo del mensaje.
$sTexto .= $listas;

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



Salu2

gh13  ::)
Si no lo sabes...averigua...
SEr o nO SeR ...( y eso a quien le importa???)