Ver Mensaje Individual
  #4 (permalink)  
Antiguo 17/01/2011, 13:10
Avatar de vbonive
vbonive
 
Fecha de Ingreso: septiembre-2010
Mensajes: 86
Antigüedad: 14 años, 3 meses
Puntos: 0
Respuesta: Ayuda Formulario de subir archivos..!

Saludos compañeros gracias por sus comentarios lo cambie a esta forma y ahora lo que hace es repetir las ultimas dos images, es decir me carga la primera imagen bien , la segunda bien, la tercera bien, y la cuarta y quinta me pone la tercera. ayuda gracias

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'100000';                                                         //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'];
$tipo=$_FILES['archivod']['type'];
$tipo=$_FILES['archivoe']['type'];
$tipo=$_FILES['archivoh']['type'];
$tipo=$_FILES['archivoi']['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(); 
$nombreoriginalexplode ('.'$_FILES['archivo']['name']);
$nombreoriginalexplode ('.'$_FILES['archivod']['name']);
$nombreoriginalexplode ('.'$_FILES['archivoe']['name']);
$nombreoriginalexplode ('.'$_FILES['archivoh']['name']);
$nombreoriginalexplode ('.'$_FILES['archivoi']['name']);
$tamano=$_FILES['archivo']['size'];
$tamano=$_FILES['archivod']['size'];
$tamano=$_FILES['archivoe']['size'];
$tamano=$_FILES['archivoh']['size'];
$tamano=$_FILES['archivoi']['size'];
$nuevonombre=$nombreoriginal[0].'-'.$aleatorio.'.'.$ext;
$nuevonombred=$nombreoriginal[1].'-'.$aleatorio.'.'.$ext;
$nuevonombree=$nombreoriginal[2].'-'.$aleatorio.'.'.$ext;
$nuevonombreh=$nombreoriginal[3].'-'.$aleatorio.'.'.$ext;
$nuevonombrei=$nombreoriginal[4].'-'.$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&ntilde;o de su archivo supera el m&aacute;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/'.$nuevonombred);
copy($_FILES['archivoe']['tmp_name'],'archivos/'.$nuevonombree);
copy($_FILES['archivoh']['tmp_name'],'archivos/'.$nuevonombreh);
copy($_FILES['archivoi']['tmp_name'],'archivos/'.$nuevonombrei);

//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 N 1: <strong><a href="'.$url.'/archivos/'.$nuevonombre.'">'.$nuevonombre.'</a> (formato:'.$ext.' - '.$tamano.' bytes)</strong>';
$contenido .= '<p>Archivo N 2: <strong><a href="'.$url.'/archivos/'.$nuevonombred.'">'.$nuevonombred.'</a> (formato:'.$ext.' - '.$tamano.' bytes)</strong>';
$contenido .= '<p>Archivo N 3: <strong><a href="'.$url.'/archivos/'.$nuevonombree.'">'.$nuevonombree.'</a> (formato:'.$ext.' - '.$tamano.' bytes)</strong>';
$contenido .= '<p>Archivo N 4: <strong><a href="'.$url.'/archivos/'.$nuevonombreh.'">'.$nuevonombreh.'</a> (formato:'.$ext.' - '.$tamano.' bytes)</strong>';$contenido .= '<p>Archivo N 5: <strong><a href="'.$url.'/archivos/'.$nuevonombrei.'">'.$nuevonombrei.'</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 &eacute;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&iacute;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 name="archivo" type="file" id="archivo"  value="<? echo $_FILE['archivo'];?><? if (isset ($flag) && $ext=='error' || $tamano $maximo_tamano) { echo 'class="error"';} else {echo 'class="campo"';} ?> />
    <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>