[RESOLU] PHP - Problème d'envoi de fichier sur FTP
Dernière réponse : dans Programmation
Salut tout le monde, j'ai un petit soucis.
J'aimerai pouvoir envoyer des images .jpg sur mon ftp et pour ca j'ai fait un script. La base de ce script a été prise sur php.net et j'ai rajouté 2-3 trucs. Seulement ca ne marche pas. La connexion au FTP se fait bien mais la fonction ftp_put() n'envoie pas l'image. Si quelqu'un peux m'aider...
Merci d'avance !
Voici le code :
J'aimerai pouvoir envoyer des images .jpg sur mon ftp et pour ca j'ai fait un script. La base de ce script a été prise sur php.net et j'ai rajouté 2-3 trucs. Seulement ca ne marche pas. La connexion au FTP se fait bien mais la fonction ftp_put() n'envoie pas l'image. Si quelqu'un peux m'aider...
Merci d'avance !
Voici le code :
<?
// Mise en place d'une connexion basique
$conn_id = ftp_connect($ftp_server);
// Identification avec un nom d'utilisateur et un mot de passe
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
// Vérification de la connexion
if ((!$conn_id) || (!$login_result))
{
echo "La connexion FTP a échoué !";
echo "Tentative de connexion au serveur $ftp_server pour l'utilisateur $ftp_user_name";
exit;
}
else
{
echo "Connexion au serveur $ftp_server, pour l'utilisateur $ftp_user_name";
}
//changement du dossier courant
ftp_chdir($conn_id, $dossier_photos);
if (isset ($_POST['fichier']))
{
if ($_POST['fichier'] != '')
{
$source_file = $_POST['fichier'];
$destination_file = $_POST['nom_fichier'] . '.jpg';
// Chargement d'un fichier
$upload = ftp_put($conn_id, $destination_file, $source_file, FTP_BINARY);
// Vérification du status du chargement
if (!$upload)
{
echo "Le chargement FTP a échoué!";
}
else
{
echo "Chargement de $source_file vers $ftp_server en tant que $destination_file";
}
}
}
?>
<h2>Ajouter une photo</h2>
<form method="post">
Nom du fichier <input type="text" name="nom_fichier" size="20"> Fichier <input type="file" name="fichier"> <input type="submit" value="OK">
</form>
<h3>Liste des fichiers</h3>
<?
$liste = ftp_nlist($conn_id, '.');
//affichage du contenu du dossier
echo '<p class="droite">Dossier courant : ' . ftp_pwd($conn_id) . '</p>';
echo '<pre>';
print_r ($liste);
echo '</pre>';
ftp_close($conn_id); // fermeture du flux FTP
?>
Autres pages sur : resolu php probleme envoi fichier ftp
Lassé par la pub ? Créez un compte
Pourquoi tu n'utilises pas la fonction "upload" via un formulaire tout simplement ? Passer par le ftp, c'est logiquement plus rapide en raison du protocole, mais je ne trouve pas çà vraiment fiable (j'ai jamais réussi à utiliser ce protocole via php) ni même simple.
Et très crade sur le serveur si çà merde ou si la connection se ferme ! Avec l'upload, tes fichiers se stockent obligatoirement dans un dossier temporaire qui est vidé, donc pas de soucis à ce niveau là... Voilà, ce n'est qu'un conseil qui vaut ce qu'il vaut ;-)
Bon courage quand même !
Et très crade sur le serveur si çà merde ou si la connection se ferme ! Avec l'upload, tes fichiers se stockent obligatoirement dans un dossier temporaire qui est vidé, donc pas de soucis à ce niveau là... Voilà, ce n'est qu'un conseil qui vaut ce qu'il vaut ;-)
Bon courage quand même !
Désolé, j'avais pas vu ton code ! :-)
Tu utilises bien un formulaire, mais en effet comme çà, çà ne risque pas de fonctionner :-)
voilà ce qu'il faut mettre à la première ligne du formulaire :
< form enctype="multipart/form-data" method="POST" name = "form" action="fichier.php" >
Si tu ne mets pas enctype="multipart/form-data", peu importe la méthode utilisée en php, çà ne fonctionnera pas, j'ai déjà été confronté à ce problème donc vala, essaie et normalement çà devrait être bon ;-)
@+
Hoxman
Tu utilises bien un formulaire, mais en effet comme çà, çà ne risque pas de fonctionner :-)
voilà ce qu'il faut mettre à la première ligne du formulaire :
< form enctype="multipart/form-data" method="POST" name = "form" action="fichier.php" >
Si tu ne mets pas enctype="multipart/form-data", peu importe la méthode utilisée en php, çà ne fonctionnera pas, j'ai déjà été confronté à ce problème donc vala, essaie et normalement çà devrait être bon ;-)
@+
Hoxman
Lassé par la pub ? Créez un compte
- Contenus similaires :
Tags :
C'est l'intention qui compte lol