Ver Mensaje Individual
  #6 (permalink)  
Antiguo 01/05/2013, 04:04
Avatar de satjaen
satjaen
 
Fecha de Ingreso: septiembre-2012
Ubicación: Jaén (Andalucía)
Mensajes: 893
Antigüedad: 11 años, 8 meses
Puntos: 10
Respuesta: Cambiar el nombre a una imagen antes de subirla

Lo estoy intentando llevando el archivo a otro donde lo renombro y si lo hace pero cuando lo llevo a upload.php me dice que no existe el fichero.

renombrar.php

Código PHP:
<?php

$archivo
=$_POST['archivo'];

//GENERADOR DE CODIGOS ALEATORIOS
    
$str "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890";
    
$cad "";
    for(
$i=0;$i<15;$i++) {
    
$cad .= substr($str,rand(0,62),1);  
    }
/*con eso generas una cadena casi irrepetible de 15 digitos aleatorios y lo puedes configurar a gusto
ahora solo quedaría agregarlo a tu imagen....
por ejemplo
*/
$archivo = ("$cad".$_FILES['archivo']['name']);
//y ya se renombra
//ahora si quieres hacer un poco mas optima la subida te aconsejaria quitar caracteres especiales y demás.... te paso una funcion
?>
<?php
function replace_filename($str,$min 0) {
    
$str ereg_replace("[^a-zA-Z0-9.()]",'_',$str);
    return (
$min == 1) ? strtolower($str) : $str;

 
//y después solo aplicamos
$archivo replace_filename($archivo);


?>

            <form action="upload.php" method="post" enctype="multipart/form-data" id="form1" name="form1" data-ajax="false">

            
                            <div style="text-align:left;float:left;width:30%;padding-top:5px">

                                Archivo   </div>
                            <div style="float:left;width:70%">

                  <input type="text" name="archivo" id="archivo" value="<?php echo $archivo ?>" />
  

                            </div>

                       </div>

                           

                        <input type="button" name="guardar" id="guardar" value="Adjuntar" onclick="comprobarDatosFormulario()" />

                    </div>

            </form>
Gracias