tengo un problema bastante gordo, tengo instalado el apache en mi ordenador (en local) y un script hecho para subir ficheros a distintas carpetas, me funciona perfectamente pero cuando lo subo a un servidor linux y lo pruebo me da el siguiente error:
Warning: Unable to create 'docs/CERTIFICACION.DOC': Permission denied in /srv/www/www.m2ingenieros.com/subir.php on line 22
Warning: Unable to move '/tmp/phpoXJRs5' to 'docs/CERTIFICACION.DOC' in /srv/www/www.m2ingenieros.com/subir.php on line 22
en el otro me lo subia perfectamente (esta montado sobre windows Xp) y las carpetas estan creadas en el servidor.
hice una prueba con phpinfo() y me dice en el servidor linux que si esta activado el upload pero en el upload_tmp_dir pone no value, ¿Puede ser eso?. es para ponerme en contacto con el Administrador del server para arreglar esto lo antes posible
os dejo el script para ver si es un fallo de codigo
Código PHP:
<?
include("funciones.php");
$carpeta=$_POST['carpeta'];
$extension = explode(".",$_FILES['archivo']['name']); //separamos los ficheros por extension para una posible muestra de errores
$num = count($extension)-1;
//lo primero que hacemos es ver a que carpeta va y si realmente acepta las extensiones que pueden ser
if($carpeta==imagenes)
{$path=imagenes;}
elseif($carpeta==documentos)
{$path=docs;}
elseif($carpeta==pdf)
{$path=pdf;}
if (is_uploaded_file($_FILES['archivo']['tmp_name']))
{
if($_FILES['archivo']['size'] < 3000000) //vemos si tiene un tamaño superior a tres megas
{
if(!move_uploaded_file($_FILES['archivo']['tmp_name'], $path."/".$_FILES['archivo']['name']))
{ error("error al copiar el archivo");}
else
{ error("archivo subido con exito");}
}
else
{error("el archivo supera los 3 Megas, no es posible subir");}
}
else
{
}
;
?>