Hola mundo!
POR FAVOR, necesito ayuda en configurar el archivo enviar.php Quiero colocar un formulario de correo con adjuntos multiples. No se como hacerlo. Donde tengo que insertar mi direccion de correo...? Llevo varios dias en eso y no hay manera...
GRACIAS. enhiar.php Código PHP:
<?php
include_once('class.phpmailer.php');
// Indica si los datos provienen del formulario
$postback=isset($_POST['postback']) ? true : false;
if ($postback) {
extract($_POST);
$mail = new phpmailer ();
$mail -> From = $from;
$mail -> FromName = "BuayaCorp"; # Puede obtenerse del formulario, por facilidad se hace de esta manera
$mail -> AddAddress = ($to);
$mail -> Subject = $sbj;
$mail -> Body = $msg;
$mail -> IsHTML (true);
$archivos = '';
$msg = "Mensaje Enviado";
if (isset ($_FILES["archivos"])) {
$msg .= "<ul>";
foreach ($_FILES["archivos"]["error"] as $key => $error) {
if ($error == UPLOAD_ERR_OK) {
$tmp_name = $_FILES["archivos"]["tmp_name"][$key];
$name = $_FILES["archivos"]["name"][$key];
$msg .= "<li>$name</li>";
$name = uniqid('bc') . '_' . $name; # Generar un nombre �nico para el archivo
$mail -> AddAttachment ($tmp_name, $name);
/*
Si se van a guardar los archivos en un directorio, deber�an descomentarse
las siguientes l�neas, si se van a guardar los nombres
de los archivos en una base de datos, aqu� deber�a realizarse algo...
move_uploaded_file($tmp_name, "ruta/directorio/$name"); # Guardar el archivo en una ubicaci�n, debe tener los permisos necesarios
*/
} #if
} # foreach
$msg .= '</ul>';
} # if
if (!$mail -> Send ()){
$msg = "No se pudo enviar el email";
}
}
?>
formulario.html Código PHP:
<html>
<head>
<meta name="GENERATOR" content="Microsoft FrontPage 5.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>Para</title>
<script type="text/javascript">
var numero = 0;
// Funciones comunes
c= function (tag) { // Crea un elemento
return document.createElement(tag);
}
d = function (id) { // Retorna un elemento en base al id
return document.getElementById(id);
}
e = function (evt) { // Retorna el evento
return (!evt) ? event : evt;
}
f = function (evt) { // Retorna el objeto que genera el evento
return evt.srcElement ? evt.srcElement : evt.target;
}
addField = function () {
container = d('files');
span = c('SPAN');
span.className = 'file';
span.id = 'file' + (++numero);
field = c('INPUT');
field.name = 'archivos[]';
field.type = 'file';
a = c('A');
a.name = span.id;
a.href = '#';
a.onclick = removeField;
a.innerHTML = 'Quitar';
span.appendChild(field);
span.appendChild(a);
container.appendChild(span);
}
removeField = function (evt) {
lnk = f(e(evt));
span = d(lnk.name);
span.parentNode.removeChild(span);
}
</script>
</head>
<body>
<form name="frm" id="frm" action="enviar.php" method="post" enctype="multipart/form-data">
<dl>
<dt><label for="to" accesskey="1">Para</label></dt>
<dd><input type="text" name="to" id="to" size="60" /></dd>
<dt><label for="from" accesskey="2">De</label></dt>
<dd><input type="text" name="from" id="from" size="60" /></dd>
<dt><label for="sbj" accesskey="3">Asunto</label></dt>
<dd><input type="text" name="sbj" id="sbj" size="60" /></dd>
<dt><b><font face="Verdana"><label for="msg" accesskey="4">Mensaje</label></font></b></dt>
<dd><textarea id="msg" name="msg" rows="7" cols="45"></textarea></dd>
<dt><b><font face="Verdana"><label>Archivos Adjuntos:</label> <a href="#" onclick="addField()" accesskey="5">Añadir Archivo</a></font></b></dt>
<dd><div id="files"></div></dd>
<dd><input type="submit" value="Enviar" id="postback" name="postback" accesskey="6" /></dd>
</dl>
</form></body>
</html>