par
ecumastor » 28 nov. 2012, 16:26
Bon allez pour la forme :
L'idée de Saian, sortir les infos de connection de la fonction, est la bonne. Ca va dix fois plus vite maintenant.
Mon code :
<?
function ecrire_log($texte){
$fp=fopen('fichier_logs.txt','a');
fputs($fp,$texte."\n");
fclose($fp);
}
function scanner($conn_id, $repertoire){
$element = ftp_nlist($conn_id, $repertoire);
$compteur=count($element);//echo"VERIF compteur : $compteur<br>";
for($i=0;$i<=$compteur-1;$i++){
$cible=$element[$i];
$res = ftp_size($conn_id,$element[$i]);
$cible=$element[$i];
if($res=="-1"){ // c'est un repertoire
scanner($conn_id,"./$cible");
}
else{ // c'est un fichier
$time_modif=ftp_mdtm($conn_id, $cible);
$date_cible=date("d/m/y",$time_modif);
$intervalle=mktime()-$time_modif;
$delai=7*24*3600;
if($intervalle<$delai){
ecrire_log(" - [$date_cible] $cible");
}
}
}
}
function verifier_sauvegarde($ftp_user_name,$ftp_user_pass){
$repertoire=".";
$ftp_server="***********.net";
$date_jour=strftime("%d/%m/%y");
$heure_jour=strftime("%H:%M:%S");
ecrire_log("\r\r[$date_jour - $heure_jour] DEMARRAGE SAUVEGARDE DE $ftp_user_name\r");
$conn_id = ftp_connect("$ftp_server");
$login_result = ftp_login($conn_id, "$ftp_user_name", "$ftp_user_pass");
scanner($conn_id,$repertoire);
ecrire_log("[$date_jour - $heure_jour] FIN SAUVEGARDE DE <b>$ftp_user_name</b>");
ftp_quit($conn_id);
}
verifier_sauvegarde("***********","***********");
verifier_sauvegarde("***********","***********");
verifier_sauvegarde("***********","***********");
verifier_sauvegarde("***********","***********");
verifier_sauvegarde("***********","***********");
verifier_sauvegarde("***********","***********");
?>
J'ai ajouté un petit fichier log qui stocke les nouveaux fichiers trouvés dans la sauvegarde.
Jusqu'ici tout va bien

Bon allez pour la forme :
L'idée de Saian, sortir les infos de connection de la fonction, est la bonne. Ca va dix fois plus vite maintenant.
Mon code :
[php]
<?
function ecrire_log($texte){
$fp=fopen('fichier_logs.txt','a');
fputs($fp,$texte."\n");
fclose($fp);
}
function scanner($conn_id, $repertoire){
$element = ftp_nlist($conn_id, $repertoire);
$compteur=count($element);//echo"VERIF compteur : $compteur<br>";
for($i=0;$i<=$compteur-1;$i++){
$cible=$element[$i];
$res = ftp_size($conn_id,$element[$i]);
$cible=$element[$i];
if($res=="-1"){ // c'est un repertoire
scanner($conn_id,"./$cible");
}
else{ // c'est un fichier
$time_modif=ftp_mdtm($conn_id, $cible);
$date_cible=date("d/m/y",$time_modif);
$intervalle=mktime()-$time_modif;
$delai=7*24*3600;
if($intervalle<$delai){
ecrire_log(" - [$date_cible] $cible");
}
}
}
}
function verifier_sauvegarde($ftp_user_name,$ftp_user_pass){
$repertoire=".";
$ftp_server="***********.net";
$date_jour=strftime("%d/%m/%y");
$heure_jour=strftime("%H:%M:%S");
ecrire_log("\r\r[$date_jour - $heure_jour] DEMARRAGE SAUVEGARDE DE $ftp_user_name\r");
$conn_id = ftp_connect("$ftp_server");
$login_result = ftp_login($conn_id, "$ftp_user_name", "$ftp_user_pass");
scanner($conn_id,$repertoire);
ecrire_log("[$date_jour - $heure_jour] FIN SAUVEGARDE DE <b>$ftp_user_name</b>");
ftp_quit($conn_id);
}
verifier_sauvegarde("***********","***********");
verifier_sauvegarde("***********","***********");
verifier_sauvegarde("***********","***********");
verifier_sauvegarde("***********","***********");
verifier_sauvegarde("***********","***********");
verifier_sauvegarde("***********","***********");
?>
[/php]
J'ai ajouté un petit fichier log qui stocke les nouveaux fichiers trouvés dans la sauvegarde.
Jusqu'ici tout va bien :)