renommer une fichier sur un ftp
Dernière réponse : dans Programmation
Bonjour,
j'essaye depuis plusieurs jours de renommer un fichier de mon espace web vers mon ftp, un shema sera plus adapté qu'un long discours barbant
home:
cgi-bin
steam/cstrike/cfg/mani_server.cfg
www/includes/listedit.php
le but de ma manoeuvre : renommer mani_server.cfg en mani_server1.cfg pour desactivé le plugin depuis ma page listedit.php
et
renommer mani_server1.cfg en mani_server.cfg pour activé le plugin depuis ma page listedit.php
voici le code :
<form method="post">
<input type="radio" name="mani" value="activé" id="activé"/><label for="activé">Activer Mani admin plugin</label><br />
<?php
$save_file = $_POST['save_file'];
$savecontent = $_POST['savecontent'];
if($save_file) {
$savecontent = stripslashes($savecontent);
$fp = @fopen($configx_cfg_locfi.''.$_GET['filed'], "w");
if ($fp) {
fwrite($fp, $savecontent);
fclose($fp);
// Mise en place d'une connexion basique
$conn_id = ftp_connect($configx_ip);
// Identification avec un nom d'utilisateur et un mot de passe
$login_result = ftp_login($conn_id, $configx_cfg_user, $configx_cfg_pass);
$fpx3 = "ftp://".$configx_cfg_user.":".$configx_cfg_pass."@".$configx_ip."".$configx_cfg_remofi;
$fpx4 = "ftp://".$configx_cfg_user.":".$configx_cfg_pass."@".$configx_ip."".$configx_path_user."".$configx_cfg_remofi;
if(is_dir($fpx3)) {
if (ftp_put($conn_id, $configx_cfg_remofi.''.$_GET['filed'], $configx_cfg_locfi.''.$_GET['filed'], FTP_ASCII)) {
echo '<div style="color:'.$configx_font.'; font-family: verdana, arial, sans-serif;font-size:10px;">'.$_GET['filed'].' '.$lang_edt_saved.'</div>';
}
else echo '<div style="color:'.$configx_font.'; font-family: verdana, arial, sans-serif;font-size:10px;">'.$lang_edt_errop.' : '.$configx_s_locfi.' !</div>';
} elseif(is_dir($fpx4)) {
if (ftp_put($conn_id, $configx_path_user.''.$configx_cfg_remofi.''.$_GET['filed'], $configx_cfg_locfi.''.$_GET['filed'], FTP_ASCII)) {
echo '<div style="color:'.$configx_font.'; font-family: verdana, arial, sans-serif;font-size:10px;">'.$_GET['filed'].' '.$lang_edt_saved.'</div>';
}
else echo '<div style="color:'.$configx_font.'; font-family: verdana, arial, sans-serif;font-size:10px;">'.$lang_edt_errop.' : '.$configx_s_locfi.' !</div>';
} else {
echo '<div style="color:'.$configx_font.'; font-family: verdana, arial, sans-serif;font-size:10px;">'.$lang_edt_err.'</div>';
}
// Fermeture de la connexion
ftp_close($conn_id);
}
else echo '<div style="color:'.$configx_font.'; font-family: verdana, arial, sans-serif;font-size:10px;">'.$lang_edt_errop.'</div>';
}
$fpx = "ftp://".$configx_cfg_user.":".$configx_cfg_pass."@".$configx_ip."".$configx_cfg_remofi."".$_GET['filed'];
$fpx2 = "ftp://".$configx_cfg_user.":".$configx_cfg_pass."@".$configx_ip."".$configx_path_user."".$configx_cfg_remofi."".$_GET['filed'];
$fp = @fopen($fpx, "rb");
$fp2 = @fopen($fpx2, "rb");
if($fp) {
$file = $configx_cfg_remofi.''.$_GET['filed'];
$conn_id = ftp_connect($configx_ip);
$login_result = ftp_login($conn_id, $configx_cfg_user, $configx_cfg_pass);
$res = ftp_size($conn_id, $file);
ftp_close($conn_id);
$loadcontent = fread($fp, $res);
fclose($fp);
} elseif($fp2) {
$file = $configx_path_user.''.$configx_cfg_remofi.''.$_GET['filed'];
$conn_id = ftp_connect($configx_ip);
$login_result = ftp_login($conn_id, $configx_cfg_user, $configx_cfg_pass);
$res = ftp_size($conn_id, $file);
ftp_close($conn_id);
$loadcontent = fread($fp2, $res);
fclose($fp2);
}
else {
echo '<div style="color:'.$configx_font.'; font-family: verdana, arial, sans-serif;font-size:10px;">'.$lang_fonc_file.' '.$_GET['filed'].' '.$lang_fonc_nexist.' !</div>';
}
$old_file = 'mani_server.cfg';
$new_file = 'mani_server1.cfg';
// Tentative de renommage de $old_file en $new_file
if (@ftp_rename($conn_id, $old_file, $new_file)) {
echo "Mani admin plugin activé\n";
} else {
echo "Impossible d'activer Mani admin plugin\n";
}
// Fermeture de la connexion
@ftp_close($conn_id);
?>
aucune erreur php mais la fonction retourne false :
Activer Mani admin plugin
Impossible d'activer Mani admin plugin
je vois pas trop où j'ai fais une erreur,
je vais vous donner les variables :
$configx_ip = '91.xxx.xx.xx';
$configx_port = '22';
$configx_user = 'serv4';
$configx_pass = 'xxxxxxxxxx';
$configx_path_user = '/home/serv4/';
$configx_script = 'start-xxx';
$configx_s_locfi = 'tmp/start-xxx';
$configx_cfg_locfi = 'tmp/';
$configx_cfg_remofi = '/steam/cstrike/cfg/';
$configx_cfg_user = 'serv4';
$configx_cfg_pass = 'xxxxxxxxx';
$configx_cfg_path = '/';
en esperant que votre aide me sois utile.
P.S : je suis au bord de la crise de nerf -___-
j'essaye depuis plusieurs jours de renommer un fichier de mon espace web vers mon ftp, un shema sera plus adapté qu'un long discours barbant
home:
cgi-bin
steam/cstrike/cfg/mani_server.cfg
www/includes/listedit.php
le but de ma manoeuvre : renommer mani_server.cfg en mani_server1.cfg pour desactivé le plugin depuis ma page listedit.php
et
renommer mani_server1.cfg en mani_server.cfg pour activé le plugin depuis ma page listedit.php
voici le code :
<form method="post">
<input type="radio" name="mani" value="activé" id="activé"/><label for="activé">Activer Mani admin plugin</label><br />
<?php
$save_file = $_POST['save_file'];
$savecontent = $_POST['savecontent'];
if($save_file) {
$savecontent = stripslashes($savecontent);
$fp = @fopen($configx_cfg_locfi.''.$_GET['filed'], "w");
if ($fp) {
fwrite($fp, $savecontent);
fclose($fp);
// Mise en place d'une connexion basique
$conn_id = ftp_connect($configx_ip);
// Identification avec un nom d'utilisateur et un mot de passe
$login_result = ftp_login($conn_id, $configx_cfg_user, $configx_cfg_pass);
$fpx3 = "ftp://".$configx_cfg_user.":".$configx_cfg_pass."@".$configx_ip."".$configx_cfg_remofi;
$fpx4 = "ftp://".$configx_cfg_user.":".$configx_cfg_pass."@".$configx_ip."".$configx_path_user."".$configx_cfg_remofi;
if(is_dir($fpx3)) {
if (ftp_put($conn_id, $configx_cfg_remofi.''.$_GET['filed'], $configx_cfg_locfi.''.$_GET['filed'], FTP_ASCII)) {
echo '<div style="color:'.$configx_font.'; font-family: verdana, arial, sans-serif;font-size:10px;">'.$_GET['filed'].' '.$lang_edt_saved.'</div>';
}
else echo '<div style="color:'.$configx_font.'; font-family: verdana, arial, sans-serif;font-size:10px;">'.$lang_edt_errop.' : '.$configx_s_locfi.' !</div>';
} elseif(is_dir($fpx4)) {
if (ftp_put($conn_id, $configx_path_user.''.$configx_cfg_remofi.''.$_GET['filed'], $configx_cfg_locfi.''.$_GET['filed'], FTP_ASCII)) {
echo '<div style="color:'.$configx_font.'; font-family: verdana, arial, sans-serif;font-size:10px;">'.$_GET['filed'].' '.$lang_edt_saved.'</div>';
}
else echo '<div style="color:'.$configx_font.'; font-family: verdana, arial, sans-serif;font-size:10px;">'.$lang_edt_errop.' : '.$configx_s_locfi.' !</div>';
} else {
echo '<div style="color:'.$configx_font.'; font-family: verdana, arial, sans-serif;font-size:10px;">'.$lang_edt_err.'</div>';
}
// Fermeture de la connexion
ftp_close($conn_id);
}
else echo '<div style="color:'.$configx_font.'; font-family: verdana, arial, sans-serif;font-size:10px;">'.$lang_edt_errop.'</div>';
}
$fpx = "ftp://".$configx_cfg_user.":".$configx_cfg_pass."@".$configx_ip."".$configx_cfg_remofi."".$_GET['filed'];
$fpx2 = "ftp://".$configx_cfg_user.":".$configx_cfg_pass."@".$configx_ip."".$configx_path_user."".$configx_cfg_remofi."".$_GET['filed'];
$fp = @fopen($fpx, "rb");
$fp2 = @fopen($fpx2, "rb");
if($fp) {
$file = $configx_cfg_remofi.''.$_GET['filed'];
$conn_id = ftp_connect($configx_ip);
$login_result = ftp_login($conn_id, $configx_cfg_user, $configx_cfg_pass);
$res = ftp_size($conn_id, $file);
ftp_close($conn_id);
$loadcontent = fread($fp, $res);
fclose($fp);
} elseif($fp2) {
$file = $configx_path_user.''.$configx_cfg_remofi.''.$_GET['filed'];
$conn_id = ftp_connect($configx_ip);
$login_result = ftp_login($conn_id, $configx_cfg_user, $configx_cfg_pass);
$res = ftp_size($conn_id, $file);
ftp_close($conn_id);
$loadcontent = fread($fp2, $res);
fclose($fp2);
}
else {
echo '<div style="color:'.$configx_font.'; font-family: verdana, arial, sans-serif;font-size:10px;">'.$lang_fonc_file.' '.$_GET['filed'].' '.$lang_fonc_nexist.' !</div>';
}
$old_file = 'mani_server.cfg';
$new_file = 'mani_server1.cfg';
// Tentative de renommage de $old_file en $new_file
if (@ftp_rename($conn_id, $old_file, $new_file)) {
echo "Mani admin plugin activé\n";
} else {
echo "Impossible d'activer Mani admin plugin\n";
}
// Fermeture de la connexion
@ftp_close($conn_id);
?>
aucune erreur php mais la fonction retourne false :
Activer Mani admin plugin
Impossible d'activer Mani admin plugin
je vois pas trop où j'ai fais une erreur,
je vais vous donner les variables :
$configx_ip = '91.xxx.xx.xx';
$configx_port = '22';
$configx_user = 'serv4';
$configx_pass = 'xxxxxxxxxx';
$configx_path_user = '/home/serv4/';
$configx_script = 'start-xxx';
$configx_s_locfi = 'tmp/start-xxx';
$configx_cfg_locfi = 'tmp/';
$configx_cfg_remofi = '/steam/cstrike/cfg/';
$configx_cfg_user = 'serv4';
$configx_cfg_pass = 'xxxxxxxxx';
$configx_cfg_path = '/';
en esperant que votre aide me sois utile.
P.S : je suis au bord de la crise de nerf -___-
Autres pages sur : renommer fichier ftp
Lassé par la pub ? Créez un compte
j'ai poster ce message sur plus de 7 forum et à l'heure actuel personne n'a encore trouvé une solution, je desespere vraiment, je sais que le code a l'air long mais peut etre qu'on peux faire plus court, je sais vraiment pas comment m'en tirer la. En esperant que ce post ne tombe pas aux oubliettes.
Tu as les droits de renommage sur ton serveur au moins ?
Ce ne sont pas les mêmes droits que ceux de lecture ou d'écriture, c'est un droit spécifique.
Si tu arrives à faire autre chose que du renommage, c'est que c'est bien un problème de droits sur le serveur FTP, à moins que le fichier que tu veuilles renommer n'existe pas (du genre pas dans le bon répertoire).
Ce ne sont pas les mêmes droits que ceux de lecture ou d'écriture, c'est un droit spécifique.
Si tu arrives à faire autre chose que du renommage, c'est que c'est bien un problème de droits sur le serveur FTP, à moins que le fichier que tu veuilles renommer n'existe pas (du genre pas dans le bon répertoire).
oui je suis en chmod 777 et le probleme vient sans doute de mon code, j'ai chercher partout comment renommer un fichier.
mon fichier cible est : "ftp://ks27121.kimsufi.com/steam/cstrike/cfg/mani_server..."
et mon .php :
http://ks27121.kimsufi.com/~serv4/includes/listedit.php
mon fichier cible est : "ftp://ks27121.kimsufi.com/steam/cstrike/cfg/mani_server..."
et mon .php :
http://ks27121.kimsufi.com/~serv4/includes/listedit.php
je vais vous expliquer comment j'ai fait pour avoir ce code : a la base le code d'origine est pour éditer le contenu d'un fichier qui est dans "ftp://ks27121.kimsufi.com/steam/cstrike/cfg/"
on peux donc rajouter du texte et sa le sauvegarde directement sur le ftp
j'ai donc enlever les lignes de code pour éditer le texte et j'ai gardé le code pour me connecter récupérer le fichier et j'ai ensuite ajouter le code pour le renommer si je devrais comprimé mon code sa donnerais çà :
<?
fopen($configx_cfg_locfi.''.$_GET['filed'], "w");
$conn_id = ftp_connect($configx_ip);
$login_result = ftp_login($conn_id, $configx_cfg_user, $configx_cfg_pass);
$oldfile = "ftp://ks27121.kimsufi.com/steam/cstrike/cfg/mani_server...";
$newfile = "ftp://ks27121.kimsufi.com/steam/cstrike/cfg/mani_server...";
if (@ftp_rename($conn_id, $oldfile, $newfile)) {
echo "Mani admin plugin d'activé\n";
} else {
echo "Impossible d'activer Mani admin plugin\n";
}
ftp_close($conn_id);
?>
mais sa retourne toujours false et sa commence a me gonfler, sa fait presque une semaine que je galère la dessus.
on peux donc rajouter du texte et sa le sauvegarde directement sur le ftp
j'ai donc enlever les lignes de code pour éditer le texte et j'ai gardé le code pour me connecter récupérer le fichier et j'ai ensuite ajouter le code pour le renommer si je devrais comprimé mon code sa donnerais çà :
<?
fopen($configx_cfg_locfi.''.$_GET['filed'], "w");
$conn_id = ftp_connect($configx_ip);
$login_result = ftp_login($conn_id, $configx_cfg_user, $configx_cfg_pass);
$oldfile = "ftp://ks27121.kimsufi.com/steam/cstrike/cfg/mani_server...";
$newfile = "ftp://ks27121.kimsufi.com/steam/cstrike/cfg/mani_server...";
if (@ftp_rename($conn_id, $oldfile, $newfile)) {
echo "Mani admin plugin d'activé\n";
} else {
echo "Impossible d'activer Mani admin plugin\n";
}
ftp_close($conn_id);
?>
mais sa retourne toujours false et sa commence a me gonfler, sa fait presque une semaine que je galère la dessus.
Je te parle des droits FTP d'accès aux fichiers, pas des droits système du fichier...
Prend un client FTP du genre Filezilla, connecte-toi au serveur FTP, et essaie de renommer à la main le fichier. Si tu n'as pas les droits de renommage, tu pourras mettre le code que tu voudras, ça ne fonctionnera pas...
Evidemment, si tu as les droits FTP de suppression du fichier et de création sur le répertoire, tu peux contourner le problème.
Prend un client FTP du genre Filezilla, connecte-toi au serveur FTP, et essaie de renommer à la main le fichier. Si tu n'as pas les droits de renommage, tu pourras mettre le code que tu voudras, ça ne fonctionnera pas...
Evidemment, si tu as les droits FTP de suppression du fichier et de création sur le répertoire, tu peux contourner le problème.
Lassé par la pub ? Créez un compte
- Contenus similaires :
- SolutionsRenommer plusieurs fichiers dans le finder
- ForumImpossible de renommer un fichier sous xp
- ForumTransfert fichier 1,04 Go sur FTP Perso Free
- Forumlangage C: Renommer fichier avec date et heure
- Forum[Résolu] [PHP] renommer un fichier si il existe déja
- ForumQuestion fichier .bat fonction renommer
- Forumrenommer fichier audio en gros
- Forum[php] uploader puis renommer un fichier
- Forum[RESOLU] Impossible de renommer un fichier ou dossier
- Voir plus