Pero una cosa es que tengas los permisos desde el servidor y otra cosa es que tengas los permisos de "upload" para el usuario de ftp.
Revisa si tu usuario en el ftp puede subir archivos (por ejemplo conectandote desde algun cliente ftp y subiendo un txt a la carpeta donde quieres guardar los archivos)
Tambien seria bueno que si ya estas conectado, hicieras el movimiento de archivos desde ftp directamente, como por ejemplo con esta funcion:
Código php:
Ver original<?
//archivo ftp_config.php
$hostFTP = "xxx.xxx.xxx.xxx";
$userFTP = "username";
$passFTP = "password";
?>
//funcion para subir archivos en ftp
<?
function ftp_upload($archivoDestino,$archivoFuente){
require('ftp_config.php');
// establecer una conexion basica
// inicio de sesion con nombre de usuario y contraseña
$loginFTP = ftp_login($FTPconn, $userFTP, $passFTP);
// chequear la conexion
if ((!$FTPconn) || (!$loginFTP)) {
return "error";
} else {
// conectamos pasivamente
// cargar el archivo como el move_uploaded_file()
$carga = ftp_put($FTPconn,$archivoDestino,$archivoFuente,FTP_BINARY
); // chequear el status de la carga
if(!$carga){
return "error";
}else{
return "ok";
}
// cierra la secuencia FTP
}else{
return "conexion perdida";
}
}
}
//manera de usarlo
$archivo = '/carpetaDestino/'.date("m-d-Y_His").'_'.$_FILES['archivo']['name']; //cambio el nombre del archivo (por ej. test.jpg)
//por el nombre con la fecha mes-dia-año_horaMinutoSegundo (ej. 11-19-2008_121235_test.jpg
if(ftp_upload_video($archivo,$_FILES['archivo']['tmp_name']) == "ok"){
//archivo en ftp
echo "el archivo subio super!";
}else{
//error
echo "may-day!!may-day!! (Houston, we have a problem!)";
}
Puse la mayor cantidad de comentarios para que sirva.
Suerte!