alguien que haya podido encontrar mi error??? Aún sigo sin entender que le pasó pues el modelo que descargue funcionaba, bastó que le agregara los campos nuevos y empezó a fallar
asi estaba el primer codigo
Código PHP:
<?php
/*
Contactenos V4 - 26/06/2011
este formulario utiliza la clase PHPMailer para el envio y proceso.
Es solo un ejemplo de una posible implementacion de PHPMailer
La clase se puede descargar desde http://phpmailer.sourceforge.net/
Junto con mas ejemplos y documentacion.
Para preguntas y soporte sobre este formulario se pueden utilizar los comentarios.
También se pueden hacer consultas via Twitter: @alfonsocatron
*/
/*
NOTA:
este archivo debe estar acompañado de una carpeta
con el nombre "archivos" en donde se copiaran los
archivos. Esta carpeta debe tener chmod 777.
*/
//CONFIGURACION
$direccion_envio= '[email protected]';
//la direccion a la que se enviara el email.
$url= 'http://www.alfonsocatron.com.ar/ejemplos/form-adjunto-multiple';
//la URL donde esta publicado el formulario. SIN la barra al final
$cantidad_archivos= 10;
//la cantidad máxima de archivos que se permitirá enviar.
//FIN CONFIGURACION
?>
<?PHP
//proceso del formulario
// si existe "enviar"...
if (isset ($_POST['enviar'])) {
// vamos a hacer uso de la clase phpmailer,
require("inc/class.phpmailer.php");
$mail = new PHPMailer();
//recogemos las variables y configuramos PHPMailer
$mail->From = $_POST['email'];
$mail->FromName = $_POST['nombre'];
$mail->AddAddress($direccion_envio);
$mail->Subject = "Contacto desde el Formulario";
$mail->AddReplyTo($_POST['email'],$_POST['nombre']);
$mail->IsHTML(true);
$comentario=$_POST['comentario'];
//comprobamos si se adjuntaron archivos, los cargamos en el servidor y los pasamos como adjuntos del email
if (isset($_FILES['archivo']['tmp_name'])) {
$achivos_adjuntos='';
$i=0;
do {
if($_FILES['archivo']['tmp_name'][$i] !="")
{
$aleatorio = rand();
$nuevonombre = $aleatorio.'-'.$_FILES['archivo']['name'][$i];
copy($_FILES['archivo']['tmp_name'][$i],'archivos/'.$nuevonombre);
$achivos_adjuntos .= '<br /><a href="'.$url.'/archivos/'.$nuevonombre.'">'.$nuevonombre.'</a></strong>';
$mail->AddAttachment($_FILES['archivo']['tmp_name'][$i], $nuevonombre);
}
$i++;
} while ($i < $cantidad_archivos);
}
//comprobamos si todos los campos fueron completados
if ($_POST['email']!='' && $_POST['nombre']!='' && $_POST['comentario']!='' && $error_archivo=='') {
$email=$_POST['email'];
$nombre=$_POST['nombre'];
$comentario=$_POST['comentario'];
//armamos el html
$contenido = '<html><body>';
$contenido .= '<h2>Contacto desde formulario</h2>';
$contenido .= '<p>Enviado el '. date("d M Y").'</p>';
$contenido .= '<hr />';
$contenido .= '<p>Nombre: <strong>'.$nombre.'</strong></p>';
$contenido .= '<p>Email: <strong>'.$email.'</strong></p>';
$contenido .= '<p>Comentario: <strong>'.$comentario.'</strong></p>';
$contenido .= '<hr />';
$contenido .= '<p>Archivos Adjuntos: '.$achivos_adjuntos.'</p>';
$contenido .= '<hr />';
$contenido .= '</body></html>';
$mail->Body = $contenido;
// si todos los campos fueron completados enviamos el mail
$mail->Send();
$flag='ok';
$mensaje='<div id="ok">Sus archivos han sido adjuntados con éxito<br /> Gracias por Contactarnos</div>';
} else {
//si no todos los campos fueron completados se frena el envio y avisamos al usuario
$flag='err';
$mensaje='<div id="error">- Los Campos Marcados Con * Son Requeridos. '.$error_archivo.'</div>';
}
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>Contactenos - v4</title>
<link href="css/contactenos.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="js/jquery-1.4.2.min.js"></script>
<script src="js/jquery.form.js" type="text/javascript" language="javascript"></script>
<script src="js/jquery.MultiFile.pack.js" type="text/javascript" language="javascript"></script>
</head>
<body>
<div id="form">
<h2>Formulario de Contacto v4</h2>
<p>Ejemplo del formulario de contacto con envío de múltiples archivos adjuntos en el mail</p>
<?php echo $mensaje; /*mostramos el estado de envio del form */ ?>
<?php if($cantidad_archivos > 1) {$plural='s';} else {$plural='';} ?>
<?php if ($flag!='ok') { ?>
<form action="<?php echo $PHP_SELF;?>" method="post" enctype="multipart/form-data">
<p><strong>Nombre*</strong><br />
<input size="40" <?php if (isset ($flag) && $_POST['nombre']=='') { echo 'class="error"';} else {echo 'class="campo"';} ?> type="text" name="nombre" value="<?php echo $_POST['nombre'];?>" /></p>
<p><strong>Email*</strong><br />
<input size="40" <?php if (isset ($flag) && $_POST['email']=='') { echo 'class="error"';} else {echo 'class="campo"';} ?> type="text" name="email" value="<?php echo $_POST['email'];?>" /></p>
<p><strong>Adjuntar Archivos</strong><br />
Puede adjuntar hasta <?=$cantidad_archivos?> archivo<?=$plural?>.<br /><br />
<input type="file" class="multi max-<?=$cantidad_archivos?>" name="archivo[]" value="<?=$_FILES['archivos']?>"><br /><br /></p>
<p><strong>Comentario*</strong><br />
<textarea cols="60" rows="10"<?php if (isset ($flag) && $_POST['comentario']=='') { echo 'class="com-error"';} else {echo 'class="com"';} ?> name="comentario"><?php echo $_POST['comentario'];?></textarea></p>
<p><input class="boton" type="submit" name="enviar" value="enviar" /></p>
</form>
<?php } ?>
</div> <!-- end form-->
</body>
</html>