Foros del Web » Programando para Internet » PHP »

move_uploaded_file en directorio concreto

Estas en el tema de move_uploaded_file en directorio concreto en el foro de PHP en Foros del Web. Hola, no se como hacer que una imagen subida al servidor se ponga en el directorio que el mismo codigo crea con "mkdir". si alguien ...
  #1 (permalink)  
Antiguo 22/02/2005, 03:17
 
Fecha de Ingreso: marzo-2003
Ubicación: Barcelona
Mensajes: 107
Antigüedad: 14 años, 9 meses
Puntos: 0
move_uploaded_file en directorio concreto

Hola, no se como hacer que una imagen subida al servidor se ponga en el directorio que el mismo codigo crea con "mkdir".
si alguien me ayuda..., Gracias
-----------------------------------------------------------------------
<?
//tomo el valor de un elemento de tipo texto del formulario
$cadenatexto = $_POST["cadenatexto"];
echo "Escribió en el campo de texto: " . $cadenatexto . "<br><br>";

//datos del arhivo
$nombre_archivo = $HTTP_POST_FILES['userfile']['name'];
$tipo_archivo = $HTTP_POST_FILES['userfile']['type'];
$tamano_archivo = $HTTP_POST_FILES['userfile']['size'];;
mkdir ($cadenatexto, 0700);
//compruebo si las características del archivo son las que deseo
if (!((strpos($tipo_archivo, "gif") || strpos($tipo_archivo, "jpeg")) && ($tamano_archivo < 100000))) {
header("Location:fallo.php");
}else{
if (move_uploaded_file($HTTP_POST_FILES['userfile']['tmp_name'], $nombre_archivo)){
header("Location:ok.php");
}else{
header("Location:no.php");
}
}
?>
  #2 (permalink)  
Antiguo 22/02/2005, 04:08
 
Fecha de Ingreso: febrero-2005
Mensajes: 396
Antigüedad: 12 años, 10 meses
Puntos: 1
Dos cosillas:

Si quieres cerciorarte de que lo que te suben son imagenes gif o jpeg, utiliza la funcion getImageSize, que entre otras cosas te devolverá el formato de la imagen, independientemente de la extension.

Por otro lado en la instruccion:

Código PHP:
move_uploaded_file($HTTP_POST_FILES['userfile']['tmp_name'], $nombre_archivo
Estas moviendo la imagen temporal a $nombre_archivo, pero es que esa variable no contiene el path (el directorio) donde tiene que salvarse.

la solucion será mas o menos:


Código PHP:
move_uploaded_file($HTTP_POST_FILES['userfile']['tmp_name'], $cadenaTexto "/" $nombre_archivo
suponiendo queen cadena texto este el directorio que quieres crear.

Ten mucho ojito con dicha $cadenaTexto, porque parece que la envias con el método post, con lo que algun cabroncete puede falsificar tu formulario, poner una $cadenaTexto = "../../../" y escribir un fichero en "cualquier lado".

Un saludo

Zerjillo
  #3 (permalink)  
Antiguo 22/02/2005, 05:41
 
Fecha de Ingreso: marzo-2003
Ubicación: Barcelona
Mensajes: 107
Antigüedad: 14 años, 9 meses
Puntos: 0
Pues muchisimas gracias, estaba desesperadillo... y ohora esto ya pita, aunque podria darle mas seguridad si lo pasara en get?o que recomiendas
  #4 (permalink)  
Antiguo 22/02/2005, 07:11
Avatar de Danger_  
Fecha de Ingreso: diciembre-2004
Ubicación: Queretaro, México
Mensajes: 395
Antigüedad: 13 años
Puntos: 0
Las variables GET y POST, yo diria que son iguales, pero se diferencian por su tipo de uso.

la seguridad la pones tu, creo que para hacer mas segura tu aplicacion, te podrias basar en el numero de condicionantes que le pongas a la misma para hacer tu upload.

quizaz condiciones que solo tu puedas complir, quizaz un password.... o algo asi.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:33.