elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Estamos en la red social de Mastodon


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  Problema con upload en PHP
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Problema con upload en PHP  (Leído 2,974 veces)
garc1

Desconectado Desconectado

Mensajes: 3


Ver Perfil
Problema con upload en PHP
« en: 16 Febrero 2009, 16:04 pm »

Tengo un problema con un formulario de upload en php... y es que cuando hago el upload en lugar de crear un directorio con el archivo que quiero subir... lo que hace es crear un archivo sin formato con el codigo fuente del archivo subido ( windows, appserv).

Este es el código del botón Upload de mi formulario:

Código:
<?php

$uploaddir = 'uploads/';
$uploadfile = $uploaddir . basename($S_FILES['userfile']['name']);

if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile))
{
echo "File ".$_FILES['userfile']['name']." subido a la carpeta ".$uploaddir;
}
else
{
echo "Upload fallido.\n";
}
?>

A que se puede deber?


En línea

Riki_89D


Desconectado Desconectado

Mensajes: 851


BCN CITY


Ver Perfil
Re: Problema con upload en PHP
« Respuesta #1 en: 16 Febrero 2009, 16:31 pm »

Hola garc1


nose a k te refieres pero mira yo para realizar los uploads utilizo etse code k es mui parecido al tuyo

Código:
<?

$target_path = "uploads/";

$target_path = $target_path . basename( $_FILES['uploadedfile']['name']);


$target_path = "uploads/";

$target_path = $target_path . basename( $_FILES['uploadedfile']['name']);

if(move_uploaded_file($_FILES['uploadedfile']['tmp_name'], $target_path)) {
    echo "The file ".  basename( $_FILES['uploadedfile']['name']).
    " has been uploaded";
} else{
    echo "There was an error uploading the file, please try again!";
}
 ?>


en uploads e sla carpeta ond ira el archivo,


salu2


En línea

garc1

Desconectado Desconectado

Mensajes: 3


Ver Perfil
Re: Problema con upload en PHP
« Respuesta #2 en: 16 Febrero 2009, 17:34 pm »

Lo que quiero decir es lo siguiente:

Cabeceras HTTP:

Content-Disposition: form-data; name="userfile"; filename="shell.php"
Content-Type: application/octet-stream


Por qué sale que es una aplicación si lo que he subido es un simple php...

No debería ser application/x-php??

Y eso, que me sale un fichero sin formato con el codigo fuente de shell.php pero no me crea la carpeta con el fichero dentro, ese es el problema.

En línea

дٳŦ٭
GNU/Linux Infrastructure Specialist
Ex-Staff
*
Desconectado Desconectado

Mensajes: 5.110


Ver Perfil WWW
Re: Problema con upload en PHP
« Respuesta #3 en: 17 Febrero 2009, 19:35 pm »

A ver... revisate dos cosas:

1) que tu input se llame userfile
2) que tu form tenga enctype="multipart/form-data"

Suerte
En línea

garc1

Desconectado Desconectado

Mensajes: 3


Ver Perfil
Re: Problema con upload en PHP
« Respuesta #4 en: 17 Febrero 2009, 21:09 pm »

Código:
  <form name="upload" action="upload1.php" method="POST" ENCTYPE="multipart/form-data">
  Selecciona el archivo a subir: <input type="file" name="userfile"/>
  <input type="submit" name="userfile" value="upload">
  </form>

Lo que si está claro es que por permisos de escritura no es... sigue pasandome lo mismo... dejo una captura con el archivo creado tras hacer upload con el formulario.
http://img518.imageshack.us/my.php?image=problemahc0.jpg

Curioso...

« Última modificación: 18 Febrero 2009, 18:25 pm por garc1 » En línea

Spider-Net


Desconectado Desconectado

Mensajes: 1.165


Un gran poder conlleva una gran responsabilidad


Ver Perfil WWW
Re: Problema con upload en PHP
« Respuesta #5 en: 25 Febrero 2009, 00:05 am »

Esta claro xD. Es que el directorio uploads tiene que existir. Cuando subes un fichero desde un formulario, éste se sube a un directorio temporal y por eso luego lo mueves con la función move_uploaded_file, pero si intentas moverlo a un directorio llamado "uploads" y éste no existe pues es imposible que tu script lo copie allí, por lo tanto te crea un archivo que se llama uploads.
Ese script no crea ningún directorio. Sólo te permite especificar a qué directorio subir el fichero, pero si el directorio no existe pues el script obviamente no funciona. Este error no es de sintaxis, es más bien un error lógico.

Crea un directorio que se llame "uploads" y luego vuelve a subir un fichero verás como funciona.

Un saludo.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines