17/01/2011, 11:27
|
| | | Fecha de Ingreso: septiembre-2010
Mensajes: 86
Antigüedad: 13 años, 8 meses Puntos: 0 | |
Ayuda Formulario de subir archivos..! Saludos Compañeros las presente es que tengo un formulario para subirl 5 archivos pero el problema esta que cuando cargo los 5 archivos aveces me sube 2 o 1 este es el codigo si me pueden ayudar se los agredesco gracia.. Código PHP: <?php /* 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 $maximo_tamano= '2000000'; //tamaño maximo de los archivos. 100000 equivale a 100kb. $direccion_envio= '[email protected]'; //la direccion a la que se enviara el email. $url= 'http://www.carroenlinea.net'; //la URL donde esta publicado el formulario. SIN la barra al final //FIN CONFIGURACION ?> <?PHP //proceso del formulario // si existe "enviar"... if (isset ($_POST['enviar'])) { //recogemos las variables $nombre=$_POST['nombre']; $email=$_POST['email']; $comentario=$_POST['comentario']; //comprobamos si se adjunto un archivo, y si su tamano es menor al permitido if (isset($_FILES['archivo']['tmp_name'])) { $tipo=$_FILES['archivo']['type']; //Formatos de archivo permitidos, si desean agregar mas, agregar un case para cada formato. switch ($tipo) { case "image/gif": $ext="gif"; break; case "image/pjpeg": $ext="jpg"; break; case "image/jpeg": $ext="jpg"; break; case "image/png": $ext="png"; break; case "application/zip": $ext="zip"; break; default: $ext="error"; break; } $aleatorio = rand(); $nombreoriginal= explode ('.', $_FILES['archivo']['name']); $tamano=$_FILES['archivo']['size']; $nuevonombre=$nombreoriginal[0].'-'.$aleatorio.'.'.$ext; } if (isset ($nuevonombre)) { if ($ext=="error") {$error_archivo="<br />- Formato de archivo no permitido.";} if ($tamano > $maximo_tamano) {$error_archivo="<br />- El tamaño de su archivo supera el máximo permitido.";} } //comprobamos si todos los campos fueron completados if ($nombre!='' && $email!='' && $comentario!='' && $error_archivo=='') { // copiamos el archivo en el servidor copy($_FILES['archivo']['tmp_name'],'archivos/'.$nuevonombre); copy($_FILES['archivod']['tmp_name'],'archivos/'.$nuevonombre); copy($_FILES['archivoe']['tmp_name'],'archivos/'.$nuevonombre); copy($_FILES['archivoh']['tmp_name'],'archivos/'.$nuevonombre); copy($_FILES['archivoi']['tmp_name'],'archivos/'.$nuevonombre); //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>'; $contenido .= '<p>Email: <strong>'.$email.'</strong>'; $contenido .= '<p>Archivo: <strong><a href="'.$url.'/archivos/'.$nuevonombre.'">'.$nuevonombre.'</a> (formato:'.$ext.' - '.$tamano.' bytes)</strong>'; $contenido .= '<p>Comentario: <strong>'.$comentario.'</strong>'; $contenido .= '<hr />'; $contenido .= '</body></html>'; // si todos los campos fueron completados enviamos el mail mail ($direccion_envio, "Contacto desde el formulario", $contenido, "From: $nombre\nContent-Type: text/html; charset=iso-8859-1\nContent-Transfer-Encoding: 8bit"); $flag='ok'; $mensaje='<div id="ok">Su archivo ha sido cargado 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 - v2</title> <style> body { font: 1em Lucida Grande, 'Trebuchet MS', verdana, sans-serif; font-size: 76%;} #form { border: 3px double #eaeaea; background-color: #FFC; padding: 1em; width: 30em; margin: auto;} #form h2{ font-size: 2em; margin: 0 0 0.5em 0; padding: 0;} #form .campo { border: 1px solid #999; padding: 0.3em; font-size: 1.5em;} #form .error { border: 1px solid #F00; padding: 0.3em; font-size: 1.5em;} #form .com { border: 1px solid #999; padding: 0.3em; font-size: 1.5em; width:18em; height: 10em; font: 1.5em Lucida Grande, 'Trebuchet MS', verdana, sans-serif;} #form .com-error { border: 1px solid #F00; padding: 0.3em; font-size: 1.2em; width:18em; height: 10em; font: 1.5em Lucida Grande, 'Trebuchet MS', verdana, sans-serif;} #form .boton { border: 2px solid #999; padding: 0.3em; font-size: 1.2em; width: 4em;} #error { border: 1px dashed #F00; background-color: #FFF; padding: 5px;} #ok { border: 1px dashed #060; background-color:#FFF; padding: 5px;} </style> </head> <body> <div id="form"> <h2>Formulario de Contacto v2</h2> <p>Ejemplo del formulario de contacto con envío de archivo</p> <? echo $mensaje; /*mostramos el estado de envio del form */ ?> <? if ($flag!='ok') { ?> <form action="<?php echo $PHP_SELF;?>" method="post" enctype="multipart/form-data"> <p>Nombre* <br /> <input <? if (isset ($flag) && $_POST['nombre']=='') { echo 'class="error"';} else {echo 'class="campo"';} ?> type="text" name="nombre" value="<? echo $_POST['nombre'];?>" /></p> <p>Email* <br /> <input <? if (isset ($flag) && $_POST['email']=='') { echo 'class="error"';} else {echo 'class="campo"';} ?> type="text" name="email" value="<? echo $_POST['email'];?>" /></p> <p>Subir Archivo*<br />(Formatos permitidos: .gif, .jpg, .png, .zip) <br /> <input <? if (isset ($flag) && $ext=='error' || $tamano > $maximo_tamano) { echo 'class="error"';} else {echo 'class="campo"';} ?> type="file" name="archivo" value="<? echo $_FILE['archivo'];?>" /> <input name="archivod" type="file" id="archivod" value="<? echo $_FILE['archivod'];?>" <? if (isset ($flag) && $ext=='error' || $tamano > $maximo_tamano) { echo 'class="error"';} else {echo 'class="campo"';} ?> /> <input name="archivoe" type="file" id="archivoe" value="<? echo $_FILE['archivoe'];?>" <? if (isset ($flag) && $ext=='error' || $tamano > $maximo_tamano) { echo 'class="error"';} else {echo 'class="campo"';} ?> /> <input name="archivoh" type="file" id="archivoh" value="<? echo $_FILE['archivoh'];?>" <? if (isset ($flag) && $ext=='error' || $tamano > $maximo_tamano) { echo 'class="error"';} else {echo 'class="campo"';} ?> /> <input name="archivoi" type="file" id="archivoi" value="<? echo $_FILE['archivoi'];?>" <? if (isset ($flag) && $ext=='error' || $tamano > $maximo_tamano) { echo 'class="error"';} else {echo 'class="campo"';} ?> /></p> <p>Comentario* <br /> <textarea <? if (isset ($flag) && $_POST['comentario']=='') { echo 'class="com-error"';} else {echo 'class="com"';} ?> name="comentario"><? echo $_POST['comentario'];?></textarea></p> <p><input class="boton" type="submit" name="enviar" value="enviar" /></p> </form> <? } ?> </div> <!-- end form--> </body> </html> |