Foros del Web » Programando para Internet » PHP »

se necesitan permisos para upload?

Estas en el tema de se necesitan permisos para upload? en el foro de PHP en Foros del Web. Tengo el archivo sube.php en el directorio raiz / y la carpeta donde quiero subir la imagen en /avatar/. Se que en /avatar/ necesito permisos ...
  #1 (permalink)  
Antiguo 04/11/2004, 15:20
Avatar de TCL_ZIP  
Fecha de Ingreso: noviembre-2003
Ubicación: Esporles, Mallorca, España
Mensajes: 690
Antigüedad: 21 años
Puntos: 4
se necesitan permisos para upload?

Tengo el archivo sube.php en el directorio raiz / y la carpeta donde quiero subir la imagen en /avatar/.
Se que en /avatar/ necesito permisos 777, pero en el directorio raiz / tambien?

Please me urge bastante
  #2 (permalink)  
Antiguo 04/11/2004, 19:06
 
Fecha de Ingreso: junio-2004
Mensajes: 84
Antigüedad: 20 años, 4 meses
Puntos: 0
Solo necesita (en esta caso el apache o el php, depende como este configurado) permisos en el directorio que queres subir el archivo.
Si al subir el archivo tienes algun error, de seguro le esta pasando mal el path.
Trata de usar path absolutos y no relativos.
Ejemplo:
Código PHP:
<?
$path 
$_SERVER["DOCUMENT_ROOT"]."/avatar";
?>
__________________
Repositorio de funciones utiles para programadores y administradores
http://www.particle.com.ar
  #3 (permalink)  
Antiguo 04/11/2004, 23:36
Avatar de TCL_ZIP  
Fecha de Ingreso: noviembre-2003
Ubicación: Esporles, Mallorca, España
Mensajes: 690
Antigüedad: 21 años
Puntos: 4
Te dejo el codigo haver si encuentras algun error entonces:
Código PHP:
<?php 
       
/*****  EXPLICACION  ****  
     + La variable $size indicarlo en kbytes  
     + $input se refiere al name="algo" que le habeis dao al campo del formulario  
     + $carpeta se refiere al nombre de la carpeta donde alojareis las o cualquier cosa  
     + En el array $permitidos indicar los formatos permitidos  
     + En el array $ext indicamos las extensiones  
     **********************/  
       
     
function upload($input,$carpeta,$size) {  
       
    
// Comprobamos que exista la carpeta, sino existe se crea y se da permisos, si existe se da permisos  
              
         
$peso_permitido $size 1024;  
         
$permitidos = array('image/jpeg','image/pjpeg','image/jpg','image/gif');  
         
$ext = array('jpeg','pjpeg','jpg','gif');  
           
         
$name $_FILES[$input]['name'];  
         
$peso $_FILES[$input]['size'];  
         
$tmp  $_FILES[$input]['tmp_name'];  
         
$type $_FILES[$input]['type'];  
           
         if(
is_uploaded_file($tmp)) { // Comprobamos haber cargado la imagen  
           
             
if((in_array($type,$permitidos)== 1) && (($peso) <= ($peso_permitido))) { // Comprobamos que sea permitido tanto peso como formato  
           
                 
$extension strrchr($name,'.');  
                   
                 if(
file_exists($carpeta.'/'.$name)) { // Miramos si eiste con el nombre que se sube, si existe le asignamosun valor variable time(), asi nunca se repetira, y sino existe lo dejamos como esta  
                   
                     
$nombre time().'.'.$extension;  
                       
                 } else {  
                   
                     
$nombre $name;  
                       
                 }  
                   
                 if(
move_uploaded_file($tmp$carpeta.'/'.$nombre)) { // Movemos el archivo a la carpeta  
                       
                     
echo 'Imagen subida con exito';  
                       
                 } else {  
                   
                     echo 
'Imagen no subida';  
                       
                 }  
               
             } else {  
               
                 for(
$i 0;$i count($ext);$i++) { // Bucle para sacar las extensiones permitidas del array $ext  
                      
                     
$ficheros .= $ext[$i] .',';  
                       
                }  
                   
                 
// Comprobamos la longitud de la cadena $ficheros y le restamos 1 asi con un substr extraemos toda la cadena menos la ultima ',' que sobra  
                   
                 
$sin_coma strlen($ficheros) - 1;  
                 
$muestro substr($ficheros0$sin_coma);  
           
                 echo 
'Solo se permiten archivos en formato '$muestro .' y que pesen '$size .'kb, Intentalo de nuevo.';  
                   
             }  
               
         } else {  
               
             echo 
'Imagen no cargada correctamente';  
           
         }  
           
     }
?>
Siempre que intento subir el script me dice imagen no cargada correctamente.
  #4 (permalink)  
Antiguo 05/11/2004, 09:19
Avatar de TCL_ZIP  
Fecha de Ingreso: noviembre-2003
Ubicación: Esporles, Mallorca, España
Mensajes: 690
Antigüedad: 21 años
Puntos: 4
Please es muy urgente!!
  #5 (permalink)  
Antiguo 05/11/2004, 10:59
Avatar de andinistas  
Fecha de Ingreso: julio-2003
Ubicación: Bogotá COL
Mensajes: 1.000
Antigüedad: 21 años, 4 meses
Puntos: 0
ok

Asignale permisos chmod desde el cliente ftp que usas a la carpeta donde quieres hacer el upload, colocale 775, o full permiso 777
__________________
Un Saludo, Andinistas.
"Llegaron... Ellos tenían la biblia y nosotros la tierra... y nos dijieron: 'Cierren los ojos y recen.' Cerramos los ojos y cuando los abrimos,
ellos tenían la tierra y nosotros la biblia." Abadío Green.
  #6 (permalink)  
Antiguo 05/11/2004, 11:03
Avatar de TCL_ZIP  
Fecha de Ingreso: noviembre-2003
Ubicación: Esporles, Mallorca, España
Mensajes: 690
Antigüedad: 21 años
Puntos: 4
la carpeta upload ya tiene permisos 777 k debo hacer?
  #7 (permalink)  
Antiguo 05/11/2004, 11:26
Avatar de andinistas  
Fecha de Ingreso: julio-2003
Ubicación: Bogotá COL
Mensajes: 1.000
Antigüedad: 21 años, 4 meses
Puntos: 0
ok

Ok entonces debe ser problema con la ruta

si estas en un hosting pues averigua la ruta de tu directorio en ese hosting

por ejemplo el mi caso esta en

/var/www/html/file_uploads

la carpeta file_uploads tiene permisologia 777


intenta haber...
__________________
Un Saludo, Andinistas.
"Llegaron... Ellos tenían la biblia y nosotros la tierra... y nos dijieron: 'Cierren los ojos y recen.' Cerramos los ojos y cuando los abrimos,
ellos tenían la tierra y nosotros la biblia." Abadío Green.
  #8 (permalink)  
Antiguo 05/11/2004, 13:58
Avatar de TCL_ZIP  
Fecha de Ingreso: noviembre-2003
Ubicación: Esporles, Mallorca, España
Mensajes: 690
Antigüedad: 21 años
Puntos: 4
No entiendo.... que es lo que debo hacer?
  #9 (permalink)  
Antiguo 05/11/2004, 14:42
Avatar de andinistas  
Fecha de Ingreso: julio-2003
Ubicación: Bogotá COL
Mensajes: 1.000
Antigüedad: 21 años, 4 meses
Puntos: 0
ok

Cita:
Iniciado por TCL_ZIP
No entiendo.... que es lo que debo hacer?

Haber lo que te digo es que asignes la ruta del directorio donde piensas hacer el upload

como te dije en mi caso tengo

/var/www/html/file_uploads

ahora tu tienes que definir una ruta tipo (/var/www/html/file_uploads) para poder hacer el upload de tus archivos ahi.
__________________
Un Saludo, Andinistas.
"Llegaron... Ellos tenían la biblia y nosotros la tierra... y nos dijieron: 'Cierren los ojos y recen.' Cerramos los ojos y cuando los abrimos,
ellos tenían la tierra y nosotros la biblia." Abadío Green.
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 12:12.