Foros del Web » Programando para Internet » PHP »

Upload en Hosting Pago

Estas en el tema de Upload en Hosting Pago en el foro de PHP en Foros del Web. Bueno despues de probar subir un archivo en localhost, tengo que utilizar esta herramienta en un Hosting Pago. Primero detallo los codigos: @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código ...
  #1 (permalink)  
Antiguo 19/01/2010, 11:49
Avatar de SirDuque  
Fecha de Ingreso: febrero-2009
Ubicación: Paso del Rey, Buenos Aires, Argentina
Mensajes: 975
Antigüedad: 15 años, 2 meses
Puntos: 89
Upload en Hosting Pago

Bueno despues de probar subir un archivo en localhost, tengo que utilizar esta herramienta en un Hosting Pago.

Primero detallo los codigos:
Código HTML:
Ver original
  1. <form enctype="multipart/form-data" action="a.php" method="POST">
  2.     <input type="hidden" name="MAX_FILE_SIZE" value="30000" />
  3.     adjuntar: <input name="userfile" type="file" />
  4.     <input type="submit" value="Send File" />
  5. </form>
  6. </body>

Código PHP:
Ver original
  1. <?php
  2.  
  3. $uploaddir = '/upload/';
  4. $uploadfile = $uploaddir . basename($_FILES['userfile']['name']);
  5.  
  6. echo '<pre>';
  7. if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
  8.     echo "File is valid, and was successfully uploaded.\n";
  9. } else {
  10.     echo "Possible file upload attack!\n";
  11. }
  12.  
  13. echo 'Here is some more debugging info:';
  14. print_r($_FILES);
  15.  
  16. print "</pre>";
  17.  
  18. ?>
en localhost, me sube el archivo a C:/upload/ que el directorio que configure en PHP.INI.
pero en el hosting me imprime lo siguiente:

Código HTML:
Ver original
  1. Warning:  move_uploaded_file(/upload/codigo mutual.txt) [function.move-uploaded-file]: failed to open stream: No such file or directory in /home2/mutual09/public_html/ci/subir/a.php on line 17
  2.  
  3. Warning:  move_uploaded_file() [function.move-uploaded-file]: Unable to move '/tmp/phpy526uk' to '/upload/codigo mutual.txt' in /home2/mutual09/public_html/ci/subir/a.php on line 17
  4. Possible file upload attack!
  5. Here is some more debugging info:Array
  6. (
  7.     [userfile] => Array
  8.         (
  9.             [name] => codigo mutual.txt
  10.             [type] => text/plain
  11.             [tmp_name] => /tmp/phpy526uk
  12.             [error] => 0
  13.             [size] => 414
  14.         )
  15.  
  16. )

Código linea 17:
Ver original
  1. if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {

segun el Cpanel mis permisos de Upload son:

File Uploads file_uploads Whether to allow HTTP file uploads. On
File Uploads upload_max_filesize Maximum allowed size for uploaded files. 2M


Los codigos de $_file los saque de este link
  #2 (permalink)  
Antiguo 19/01/2010, 12:06
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Upload en Hosting Pago

si, si... pero te recuerdo que las rutas de Windows no son iguales a las de Unix

por eso es que te sale un error, porque la carpeta /upload/ no existe en ese sistema...
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 19/01/2010, 12:10
Avatar de SirDuque  
Fecha de Ingreso: febrero-2009
Ubicación: Paso del Rey, Buenos Aires, Argentina
Mensajes: 975
Antigüedad: 15 años, 2 meses
Puntos: 89
Respuesta: Upload en Hosting Pago

Cita:
Iniciado por pateketrueke Ver Mensaje
si, si... pero te recuerdo que las rutas de Windows no son iguales a las de Unix

por eso es que te sale un error, porque la carpeta /upload/ no existe en ese sistema...
mmmmm no la cree en public_html
y en la misma carpeta donde esta a.php
  #4 (permalink)  
Antiguo 19/01/2010, 12:39
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Upload en Hosting Pago

solo te recuerdo, que en Unix la barra inicial si tiene significado... osea, /upload/ sería una ruta desde la raíz del sistema...

así que obviamente el problema está en dicha ruta...

lo mas sencillo es usar getcwd() para obtener la ruta del script actual, y concatenarle lo demás...
Código PHP:
$ruta getcwd() . DIRECTORY_SEPARATOR 'upload'
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 19/01/2010, 13:59
 
Fecha de Ingreso: enero-2010
Mensajes: 152
Antigüedad: 14 años, 3 meses
Puntos: 5
Respuesta: Upload en Hosting Pago

En linux no existen unidades C. d: ni nada de eso.

la diagonal normal se refiere a la raiz del sistema, lo que en windows sería c:\

Los directorios están separados por diagonales normales: /

en php puedes usar comodines para identificar los directorios:

./ corresponde al directorio actual
../ Corresponde al directorio padre del directorio actual.

viva linux!!!!!!!!
jajaja
  #6 (permalink)  
Antiguo 19/01/2010, 16:54
Avatar de SirDuque  
Fecha de Ingreso: febrero-2009
Ubicación: Paso del Rey, Buenos Aires, Argentina
Mensajes: 975
Antigüedad: 15 años, 2 meses
Puntos: 89
Respuesta: Upload en Hosting Pago

bueno cree getcwd.php
y me tiro esto
Código HTML:
Ver original
  1. /home2/mutual09/public_html/ci
coloque la ruta en el php haci
Código PHP:
Ver original
  1. $uploaddir = '/home2/mutual09/public_html/ci/upload/';
  2. $uploadfile = $uploaddir . basename($_FILES['userfile']['name']);
El erro es este:
Código HTML:
Ver original
  1. Warning:  move_uploaded_file(/home2/mutual09/public_html/ci/upload/codigo mutual.txt) [function.move-uploaded-file]: failed to open stream: Permission denied in /home2/mutual09/public_html/ci/a.php on line 17
  2.  
  3. Warning:  move_uploaded_file() [function.move-uploaded-file]: Unable to move '/tmp/phpFRpe8k' to '/home2/mutual09/public_html/ci/upload/codigo mutual.txt' in /home2/mutual09/public_html/ci/a.php on line 17
  4. Possible file upload attack!
  5. Here is some more debugging info:Array
  6. (
  7.     [userfile] => Array
  8.         (
  9.             [name] => codigo mutual.txt
  10.             [type] => text/plain
  11.             [tmp_name] => /tmp/phpFRpe8k
  12.             [error] => 0
  13.             [size] => 414
  14.         )
  15.  
  16. )

si bien me planteas esto:
Código PHP:
Ver original
  1. $ruta = getcwd() . DIRECTORY_SEPARATOR . 'upload';
no se como utilizarlo.
Me podras dar una mano?
  #7 (permalink)  
Antiguo 19/01/2010, 17:01
 
Fecha de Ingreso: enero-2010
Mensajes: 152
Antigüedad: 14 años, 3 meses
Puntos: 5
Respuesta: Upload en Hosting Pago

me parece que tu error es el espacio que dejas en el nombre.
  #8 (permalink)  
Antiguo 20/01/2010, 08:53
Avatar de SirDuque  
Fecha de Ingreso: febrero-2009
Ubicación: Paso del Rey, Buenos Aires, Argentina
Mensajes: 975
Antigüedad: 15 años, 2 meses
Puntos: 89
Respuesta: Upload en Hosting Pago

Cita:
Iniciado por paynalton Ver Mensaje
me parece que tu error es el espacio que dejas en el nombre.
te recuerdo que en LOCAHOST funciona bien.
  #9 (permalink)  
Antiguo 20/01/2010, 14:03
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Upload en Hosting Pago

Cita:
Iniciado por SirDuque Ver Mensaje
te recuerdo que en LOCAHOST funciona bien.
mira, getcwd() no lo debías ejecutar en un script solo... debiste hacerlo en el mismo script que hace el upload...

era para que comprobaras la ruta donde estas ejecutando la orden con move_uploaded_file()

ahora... el mensaje de error te ha estado diciendo el problema todo el tiempo...

¿acaso no sabes usar un traductor??

es sencillo, dice que simplemente no tienes permisos en la ruta donde quieres mover finalmente el archivo...
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #10 (permalink)  
Antiguo 21/01/2010, 18:54
Avatar de SirDuque  
Fecha de Ingreso: febrero-2009
Ubicación: Paso del Rey, Buenos Aires, Argentina
Mensajes: 975
Antigüedad: 15 años, 2 meses
Puntos: 89
Respuesta: Upload en Hosting Pago

Cita:
Iniciado por pateketrueke Ver Mensaje
mira, getcwd() no lo debías ejecutar en un script solo... debiste hacerlo en el mismo script que hace el upload...

era para que comprobaras la ruta donde estas ejecutando la orden con move_uploaded_file()

ahora... el mensaje de error te ha estado diciendo el problema todo el tiempo...

¿acaso no sabes usar un traductor??

es sencillo, dice que simplemente no tienes permisos en la ruta donde quieres mover finalmente el archivo...
informacion del Hosting:
PHP.INI:

File Uploads file_uploads Whether to allow HTTP file uploads. On
File Uploads upload_max_filesize Maximum allowed size for uploaded files. 2M

Etiquetas: hosting, pago, upload
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 09:55.