Chmod

Realmente he visto mucho de CHMOD en la web
Todo el mundo pregunta
Pero no puedo solucionar mi problema
Te cuento que estoy creando un administrador.
En el subo imágenes
Ademas de subirlas las redimensiono una vez que están arriba.
El problema es que no me permite redimensionarla si la carpeta (creada automáticamente por ftp, uso una clase) no tiene permiso 777.
Cuando se lo cambio manualmente en mi programa de ftp, luego funciona bárbaro
Pero yo necesito que esto sea automático
Probé con la orden:
chmod($ruta."/", 0777);
donde ruta es: "../../material/29"
No me da error pero no me cambia nada
¿Qué hago mal?
Respuesta
1
Yo creo que el problema esta en las barras, prueba utilizar chmod ("/dir/dir/",0777);
o
chmod ("dir/dir/",0777);
-----
Aquí:
imageJPEG($imagen,$ruta."/".$nuevo_nombre,99);
Asegurate de que $ruta no tiene una / al final
Intente sacarle la ultima barra, como en tu ejemplo.
Pero me da el mismo error
¿Sera qué depende del servidor?
Supongamos el siguiente directorio
media/imagenes/
Yo para borrar un directorio utilizo unlink
unlink ("media/imagenes");
de la misma manera:
chmod("media/imagenes",0777);
Hice un archivo y le puse la orden
chmod("imagenes/",0777);
Cuando lo ejecuto el servidor me contesta:
Warning: chmod(): Operation not permitted in /home/paginas/public_html/sitio/elbio/material/cambiar.php on line 2
¿Esto quiere decir que no podre?
Sin embargo por el Cuteftp puedo.
Con respecto a lode imageJPEG revise, y el parametro ruta vale: "../../material/35"
¿Se te ocurre algo más para hacer o probar?
Muchas gracias por tu tiempo, para mi es invaluable.
Tal vez esto ayude
Hice este archivo php
<?php
copy_resize("42_gr.jpg","../../material/35","42_ch.jpg",30,30);
function copy_resize($nombre_origen,$ruta,$nuevo_nombre,$ancho,$alto){
//copia y redimensiona la imagen subida
opendir($ruta."/");
$fuente=ImageCreateFromJPEG($ruta."/".$nombre_origen);
$imgAncho=Imagesx($fuente);
$imgAlto=Imagesy($fuente);
$imagen=ImageCreateTrueColor($ancho,$alto);
ImageCopyResized($imagen,$fuente,0,0,0,0,$ancho,$alto,$imgAncho,$imgAlto);
// para grabar la imagen
imageJPEG($imagen,$ruta."/".$nuevo_nombre,99);
imagedestroy($imagen);
}
?>
Si el directorio tiene permiso 777 funciona, si no no funciona
De ahí que necesito cambiar el permiso
A través de mi programa de ftp, puedo
Pero si lo hago con la instrucción CHMOD de php no me lo cambia.
? ¿
Ja! Un final feliz... me alegra, yo por mi parte estoy cerca de un final feliz, estoy lidiando con una consulta sql, uff...
SELECT suscriptores.Email, susc_sectores . * , susc_tipoempleos . * , susc_paises . * ,
ofertas.Id_Oferta, ofertas.Titulo, ofertas.Descripcion, ofertas.Pais, ofertas.Estado,
ofertas.FechaExp, ofertassectores . * , ofertastipoempleo . *
FROM
Suscriptores,
susc_sectores,
ofertassectores,
susc_tipoempleos,
ofertastipoempleo,
susc_paises,
ofertas
WHERE suscriptores.Email = susc_sectores.Email
AND suscriptores.Email = susc_tipoempleos.Email
AND suscriptores.Email = susc_paises.Email
AND ofertas.Id_Oferta = ofertassectores.Id_Oferta
AND ofertas.Id_Oferta = ofertastipoempleo.Id_Oferta
AND susc_paises.Pais = Ofertas.Pais
AND susc_tipoempleos.TipoEmpleo = ofertastipoempleo.TipoEmpleo
AND susc_sectores.Sector = ofertassectores.Sector
AND ofertas.Estado = 'Aceptada'
AND ofertas. FechaExp < '2005-05-06'
-------
Oye, tu podrías ser una experta...
Así n me siento solo en el 1er lugar :P
Jaj
Lo logramos!
Gracias por estar ahí.
Mira luego de 1555555 pruebas, jajajaj, vi que la instrucción del CuteFtp era
ftp_site($conn, 'CHMOD 0777 $ruta');
Donde $ruta es por ejemplo "/dir"
Lo hice así y me funciono! : )
Tal vez el otro CHMOD no me funcionaba porque yo creo la ruta por ftp (dato que me parece que no te di)
Espero tu cierre y así finalizo la pregunta y valoro tu apoyo.
Muchas Gracias
Saludos
Claudia
Encantada Juan Manuel
Pero me falta tanto para lo de experta! Fíjate que tu consulta me marea solo de verla! jaja
Si soy experta en preguntar, eso si, jajaja
Que llegues al final feliz!
Hasta otra!
Desde Uruguay, saludos Claudia

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas