<?php
function ftp_putdir($host , $user , $passwd , $localdir , $remotedir , $port=21){
/* Paramètres
* $host : hôte FTP
* $user : login
* $passwd : mot de passe
* $localdir : dossier à envoyer
* $remotedir : dossier ou stocker les fichiers
* $port : port de connexion
*/
if (func_num_args() == 7)
{
$stream = func_get_args(6);
}
else
{
$stream = ftp_connect($host, $port);
if (!ftp_login($stream, $user, $passwd))
return FALSE;
if (!ftp_chdir($stream, $remotedir))
return FALSE;
}
if (!is_readable($localdir))
return FALSE;
$dir = opendir($localdir);
if (is_resource($dir))
{
while($v = readdir($dir))
{
if ($v == '.' || $v == '..')
continue;
if (is_dir("$localdir/$v"))
{
if (!(@ftp_chdir($stream, "$v")))
{
ftp_mkdir($stream, "$v");
ftp_chdir($stream, "$v");
}
ftp_putdir($host, $user, $passwd, "$localdir/$v", "$remotedir/$v",
$port, $stream);
ftp_cdup($stream);
}
else
{
$fp = fopen("$localdir/$v", 'r');
if (is_resource($fp))
{
ftp_fput($stream, $v, $fp, FTP_BINARY);
fclose($fp);
}
}
}
}
?> |