Renombrar archivos en php vía Variable URL
Tengo que realizar un script que realize el upload de un archivo con PHP
Hasta allí todo va bien, ya tengo el script
Lo que necesito es que me envíen el nombre del archivo en una variable url junto a la dirección http:// y ese sea el nombre con el que se guarde el archivo en el servidor.
Ejemplo: http:192.168.54.01/subir/upload.php?x1=archivo4
Y que cuando se guarde el archivo, este se llame "archivo4.txt"
Este es mi código, pero no logro que x1 reciba el valor (y mucho menos que se renombre el archivo)
¿Alguien tiene alguna idea?
$status = "";
$x1 = $_GET['x1'];
if ($_POST["action"] == "upload") {
// obtenemos los datos del archivo
$tamano = $_FILES["archivo"]['size'];
$tipo = $_FILES["archivo"]['type'];
$archivo = $_FILES["archivo"]['name'];
$prefijo = substr(md5(uniqid(rand())),0,6);
if ($archivo != "") {
// guardamos el archivo a la carpeta temporal
//$destino = "/home/desaest/tmp/".$prefijo."_".$archivo;
$destino = "/home/desaest/tmp/".$x1."_".$archivo;
if (copy($_FILES['archivo']['tmp_name'],$destino)) {
$status = "Archivo subido: ".$x1.";
} else {
$status = "Error al subir el archivo";
}
} else {
$status = "Error al subir archivo";
}
}
?>
l
Hasta allí todo va bien, ya tengo el script
Lo que necesito es que me envíen el nombre del archivo en una variable url junto a la dirección http:// y ese sea el nombre con el que se guarde el archivo en el servidor.
Ejemplo: http:192.168.54.01/subir/upload.php?x1=archivo4
Y que cuando se guarde el archivo, este se llame "archivo4.txt"
Este es mi código, pero no logro que x1 reciba el valor (y mucho menos que se renombre el archivo)
¿Alguien tiene alguna idea?
$status = "";
$x1 = $_GET['x1'];
if ($_POST["action"] == "upload") {
// obtenemos los datos del archivo
$tamano = $_FILES["archivo"]['size'];
$tipo = $_FILES["archivo"]['type'];
$archivo = $_FILES["archivo"]['name'];
$prefijo = substr(md5(uniqid(rand())),0,6);
if ($archivo != "") {
// guardamos el archivo a la carpeta temporal
//$destino = "/home/desaest/tmp/".$prefijo."_".$archivo;
$destino = "/home/desaest/tmp/".$x1."_".$archivo;
if (copy($_FILES['archivo']['tmp_name'],$destino)) {
$status = "Archivo subido: ".$x1.";
} else {
$status = "Error al subir el archivo";
}
} else {
$status = "Error al subir archivo";
}
}
?>
l
Respuesta de jordi_oller
1