Copier/Coller sur Ftp en php

Eléphanteau du PHP | 19 Messages

04 janv. 2007, 19:04

Bonjour, je suis actuellement en train de faire un petit programme, pour pouvoir mettre à jour des index pour deux sites internet.

Voici mon problème :

J'essaye de copier un fichier d'un server ftp dans un autre dossier du même server via un script php. Le problème est que je ne trouve pas la commande ftp pour pouvoir copier et coller. Peut-être n'existe-t-elle pas, car j'ai chercher sur beaucoup de sites.

Donc si quelqu'un pouvait m'aider, ce serait sympa

Merci et à bientot

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

04 janv. 2007, 19:08

La FAQ n'est pas faite pour les questions, je déplace.

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

04 janv. 2007, 19:09

Voici la page d'accueil du manuel PHP, il y a une section : "fonctions FTP"

==> http://fr.php.net/manual/fr/

Eléphanteau du PHP | 19 Messages

04 janv. 2007, 21:06

Salut, merci de m'avoir répondu, j'avais déjà été sur ce site mais je n'ai pas trouver la fonction copier sur un ftp.

Comme je suis nouvelle sur le forum, je ne sais pas trop comment ca fonctionne.

ViPHP
ViPHP | 3607 Messages

04 janv. 2007, 21:17

est-ce que tu as réussis à aller jusque là: http://fr.php.net/manual/fr/ref.ftp.php ?
dans ce cas tu aurais pu trouver cette fonction ftp_rename(), et dans les commentaires de cette dernière:
Using "ftp_rename" to move files to other directories on server ftp
..
...
if(ftp_rename($conn_ftp, $xfiles[$i], "./dirx/".$xfiles[$i])) {
echo "File $xfiles[$i] moved to ./dirx";
} else {
echo "ERROR!!!. The file could not be moved";
}
...
..
#-->>

ViPHP
ViPHP | 1961 Messages

04 janv. 2007, 21:21

Bonsoir,

Peux tu préciser ce que tu veux ?

Tu veux une interface graphique avec 2 fenêtres, une Ordi local, l'autre le serveur et pouvoir transférer d'une machine à l'autre par un copier/coller?
Ou bien faire une copie d'un fichier sur le serveur ?
Ou encore autre chose ???
Deux choses sont infinies, l'Univers et la sottise humaine!!
Mais je ne suis pas sur de ce que j'affirme au sujet de l'Univers.

A. Einstein

Eléphanteau du PHP | 19 Messages

04 janv. 2007, 22:55

Bah le ftp_rename déplace mon fichier ms il efface le fichier source, moi je ne veux pas kil efface je veu aussi le garder!

Dans mon ftp jai plusieurs dossier et jaimerai faire une copie d'un fichier index dans un autre dossier, sans passer par un ordi local.

Si vous ne comprenez dites le moi, que je réexplik

ViPHP
ViPHP | 1961 Messages

04 janv. 2007, 23:03

Re,

Et la fonction ftp_exec() avec la commande de copie en fonction du système, elle te conviens pas ?
Deux choses sont infinies, l'Univers et la sottise humaine!!
Mais je ne suis pas sur de ce que j'affirme au sujet de l'Univers.

A. Einstein

Eléphanteau du PHP | 19 Messages

04 janv. 2007, 23:14

Bah en faite j'ai essayé ca

$cmd = 'copy >/public/www/test.txt /public/www/archives/test.txt';
$conn_id = ftp_connect($ftp_server);$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

if (ftp_exec($conn_id, $cmd)) {    

    echo "$cmd réussi";
} 
else {      

   echo 'Impossible d\'exécuter la commande ';
}

ca me met comme erreur, SITE EXEC inconnue

ViPHP
ViPHP | 1961 Messages

04 janv. 2007, 23:19

Re,

La syntaxe de la commande "copy" n'est pas correcte

Pour Linux/UNIX : cp /chemin/ficher.ext /nouv_chem/fichier.ext
Pour MS-DOS/Windows : copy unite:/chemin/ficher.ext unite:/nouv_chem/fichier.ext
Deux choses sont infinies, l'Univers et la sottise humaine!!
Mais je ne suis pas sur de ce que j'affirme au sujet de l'Univers.

A. Einstein

Eléphanteau du PHP | 19 Messages

05 janv. 2007, 00:05

Ah d'accord, bah j'essaierai demain car la jsuis fatiguée et je te dirai si ca a marché.

En tous cas je te remercie.

A+

Eléphanteau du PHP | 19 Messages

05 janv. 2007, 11:34

Re,

Alors j'ai essayé la commande que tu m'as donné hier, mais elle ne fonctionne tjs pas, et j'ai ça comme erreur :

Warning: ftp_exec(): SITE EXEC is an unknown extension in c:\program files\easyphp1-8\www\cut_past\essai2.php on line 36

Peut-être que mon php ne connai ps cette fonction?