Foro de elhacker.net

Programación => Desarrollo Web => Mensaje iniciado por: Clavo Oxidado en 24 Noviembre 2014, 21:32 pm



Título: ¿Subir un archivo en dos directorios? (Solucionado)
Publicado por: Clavo Oxidado en 24 Noviembre 2014, 21:32 pm
Hola quisiera hacer en php como podría subir un sólo archivo al servidor en dos directorios diferentes.
A mi me sale para subir un solo archivo a un determinado directorio y tengo el siguiente código:
Código:
<html>
<head>
</head>
<body>
<?php

$idImagen=$_POST['idImagen'];

$uploadDir = '/var/www/informatica/Imgs/imagenes_glr/';

$uploadDirThumbs = '/var/www/informatica/Imgs/imagenes_glr/thumbs/';


$nombreFichero = $_FILES['userFile']['name'];

$extension = end(explode(".", $nombreFichero));

$uploadFile = $uploadDir.$idImagen.".".$extension;
$uploadFileThumbs = $uploadDirThumbs.$idImagen.".".$extension;

if (strcasecmp($extension, "jpg") != 0 && strcasecmp($extension, "jpeg") != 0 && strcasecmp($extension, "gif") != 0 && strcasecmp($extension, "png") != 0) {
echo "<center><span style='margin-top:50px;font-size:50px;font-weight:bold;color:#ffffff'>Archivo no permitido: .$extension</span></cente>";
echo "<br><br><br>";
echo "<center><img src='../Imgs/denegar.png' style='border:none;width:250px'></img></center>";
} else {

if(move_uploaded_file($_FILES['userFile']['tmp_name'],  $uploadFile)) {

$conexion=mysql_connect("localhost",userejemplo","passejemplo") or die ("ERROR CONEXION MySQL.");
@mysql_select_db("sinformatica");



$select_update="UPDATE IMAGENES SET imagen='".$idImagen.".".$extension."' WHERE id_imagen = '".$idImagen."';";

@mysql_query($select_update);


mysql_close($conexion);

echo "<center><span style='margin-top:50px;font-size:30px;font-weight:bold;color:#000000'>El archivo se ha subido correctamente.</span></center>";
echo "<br><br><br>";
echo "<center><img src='../Imgs/ok.png' style='border:none;width:250px'></img></center>";
} else {
echo "<center><span style='margin-top:50px;font-size:30px;font-weight:bold;color:#000000'>Ha habido un problema al subir el archivo.</span></center>";
echo "<br><br><br>";
echo "<center><img src='../Imgs/error.png' style='border:none;width:250px'></img></center>";
}

}

?>
</body>
</html>

Lo he intentado hacerlo de la siguiente manera pero no me sale:

Creo otra variable especificando donde lo quiero guardarlo.

$uploadDirThumbs = '/var/www/emergenciassos2/Imgs/imagenes_glr/thumbs';

Creo otra variable más especificando en el idImagen el formato de patrón como puede ser nombre y extensión:  

$uploadFileThumbs = $uploadDirThumbs.$idImagen.".".$extension;

Y en la misma condición añado la nueva variable:

if(move_uploaded_file($_FILES['userFile']['tmp_name'],  $uploadFile) && move_uploaded_file($_FILES['userFile']['tmp_name'],  $uploadFileThumbs))

Pero me sale este error a la hora de subirlo:

Parse error: syntax error, unexpected T_BOOLEAN_AND in /var/www/informatica/imagenes_mnto/uploadFotoImagen.php on line 27

Seguro que está mal interpretada la condición peor lo he echo de varias manera y nada.

¿Alguna solución?

Un saludo.


Título: Re: ¿Subir un archivo en dos directorios?
Publicado por: Clavo Oxidado en 26 Noviembre 2014, 12:01 pm
Solucionado, el problema era que solo había que cambiar de función y es el siguiente por si alguien le sirve:

if(copy($_FILES['userFile']['tmp_name'], $uploadFile)) { if(copy($_FILES['userFile']['tmp_name'], $uploadFileThumbs))

Un saludo.