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á en el enví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ó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($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("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 ::)
no entiendo el problema...
explica bien que quieres lograr con tu codigo y cual problema te da para lograrlo
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 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
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 ::)