Foros del Web » Programando para Internet » PHP »

formulario en php con archivos adjuntos

Estas en el tema de formulario en php con archivos adjuntos en el foro de PHP en Foros del Web. Hola amigos! espero que estén bien y puedan ayudarme con un asunto, hace tiempo logre hacer funcionar un php para que pudieran enviarme un formulario ...
  #1 (permalink)  
Antiguo 31/10/2013, 22:54
 
Fecha de Ingreso: marzo-2013
Ubicación: Estado de Mexico
Mensajes: 3
Antigüedad: 11 años, 1 mes
Puntos: 0
Pregunta formulario en php con archivos adjuntos

Hola amigos! espero que estén bien y puedan ayudarme con un asunto,


hace tiempo logre hacer funcionar un php para que pudieran enviarme un formulario
en el cual deben de mandarme algunas fotografias, ademas de datos personales.

y de echo funciona, sin embargo a mi poco conocimiento sobre php y protocolos sobre mailing, hay veces en que el formulario llega en blanco al correo de destino.

me han dicho que es por el tamaño de las fotos que mandan es muy grande,
me gustaría saber si hay alguna manera de limitar el tamaño de las imagenes

y siendo caprichoso ver si hay algún tutorial para validar de una manera muy bonita :) les dejo el código de mi php que utilizo, a ver si alguien puede ayudarme muchas gracias!






<?php
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]", $_POST[asunto],
"Los datos introducidos en el formulario son:\n\n", $_POST[email]))
echo "Su formulario ha sido enviado con exito";
?>
  #2 (permalink)  
Antiguo 01/11/2013, 20:33
Avatar de Desarrollador01  
Fecha de Ingreso: noviembre-2011
Ubicación: Santa Cruz de la Sierra, Bolivia, Bolivia
Mensajes: 8
Antigüedad: 12 años, 5 meses
Puntos: 0
Respuesta: formulario en php con archivos adjuntos

Usa la clase phpmailer. Es mucho mejor.. saludos. Si necesitas mas ayuda.. agregame desarollador_01 ese wa mi skype.

Etiquetas: adjuntos, mail
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 17:56.