Bonjour,
J'ai un script qui se connect sur un serveur via ssh pour uploader et downloader des fichiers.
J'arrive a uploader les fichiers mais pas a les downloader. Je bloquer donc je demandes votre aide.
Voici le code pour l'upload qui foncionne :
et voici mon code pour le download :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 $local = $dir.$file; $remote = $remotedir.$file; if(file_exists($local)){ // lit le contenu du fichier en local $handle = fopen($local, "r"); $contents = ""; while(!feof($handle)) $contents .= fread($handle, 8192); fclose($handle); // ecrit le contenu sur le fichier distant $sftp = ssh2_sftp($this->conn_id); $stream = fopen("ssh2.sftp://$sftp".$remote, "w"); if(!fwrite($stream, $contents)) echo "upload échoué : $file"; fclose($stream); }
Le code "faux" est situé entre les lignes de commentaires :// marche pas // et // fin marche pas//. Quand le script est lancé le while a l'air de boucler à l'infini.
$t[0] represente le nom du fichier a downloader
Merci.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 $sftp = ssh2_sftp($this->conn_id); // lit le contenu des fichiers distants $remote = $remotedir.$t[0]; $stream = fopen("ssh2.sftp://$sftp".$remote, "r"); // marche pas // while(!feof($stream)) $contents .= fread($stream, 8192); fclose($stream); // fin marche pas // // écrit le contenu dans les fichiers en local $local = $dir.$t[0]; $handle = fopen($local, "w"); if(!fwrite($handle, $contents)) echo "upload échoué : ".$t[0]; fclose($handle); fclose($stream);
Si vous avez des liens d'aides sur cette bibliotheque (autre que php.net ) n'hésitez pas.
Partager