IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Manipulation de fichier via FTP


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Inscrit en
    Décembre 2010
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Décembre 2010
    Messages : 7
    Par défaut Manipulation de fichier via FTP
    Salut à tous,

    je débute en php, et j'aurais besoin de manipuler des fichiers php ( upload un fichier, le supprimer, le modifier, voir sa taille, son contenu et même l'éditer dans un second temps ) et je ne sais pas du tout par ou commencer, j'ai fait plusieurs recherches, j'ai trouvé des exemples de script, mais j'avoue ne pas tout saisir, si quelqu'un pouvait éclairer ma lanterne ...

    A savoir que j'utilise fileZilla comme FTP, et que lorsque j'essaye ce code, je me retrouve confronter à une erreur ligne 29, apparemment l'upload ne marche simplement pas... Si quelqu'un en donnait la raison, ou peut me proposer un autre script / exemple, j'implore votre aide

    Merci d'avance de votre attention


    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
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    <?php
      //-- SMTP Mail Function  By Aditya Bhatt
      if(isset($_POST['SubmitFile'])){
          $myFile = $_FILES['txt_file']; // This will make an array out of the file information that was stored.
          $file = $myFile['tmp_name'];  //Converts the array into a new string containing the path name on the server where your file is.
     
          $myFileName = basename($_FILES['txt_file']['name']); //Retrieve filename out of file path
     
          $destination_file = $_REQUEST['filepath'].$myFileName;
          #"/developers/uploadftp/aditya/".$myFileName;  //where you want to throw the file on the webserver (relative to your login dir)
     
          // connection settings
          $ftp_server = trim($_REQUEST['serverip']);  //address of ftp server.
          $ftp_user_name = trim($_REQUEST['username']); // Username
          $ftp_user_pass = trim($_REQUEST['password']);   // Password
     
          $conn_id = ftp_connect($ftp_server) or die("<span style='color:#FF0000'><h2>Couldn't connect to $ftp_server</h2></span>");        // set up basic connection
          #print_r($conn_id);
          $login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass) or die("<span style='color:#FF0000'><h2>You do not have access to this ftp server!</h2></span>");   // login with username and password, or give invalid user message
          if ((!$conn_id) || (!$login_result)) {  // check connection
                 // wont ever hit this, b/c of the die call on ftp_login
                 echo "<span style='color:#FF0000'><h2>FTP connection has failed! <br />";
                 echo "Attempted to connect to $ftp_server for user $ftp_user_name</h2></span>";
                 exit;
             } else {
             //    echo "Connected to $ftp_server, for user $ftp_user_name <br />";
          }
     
          $upload = ftp_put($conn_id, $destination_file, $file, FTP_BINARY);  // upload the file
          if (!$upload) {  // check upload status
             echo "<span style='color:#FF0000'><h2>FTP upload of $myFileName has failed!</h2></span> <br />";
          } else {
             echo "<span style='color:#339900'><h2>Uploading $myFileName Completed Successfully!</h2></span><br /><br />";
          }
     
          ftp_close($conn_id); // close the FTP stream
      }
    ?>
     
    <html>
      <head></head>
      <body>
            <form enctype="multipart/form-data" action="<?php echo $_SERVER['PHP_SELF'];?>" method="POST">
                Server IP Address: <input name="serverip" type="text" id="serverip" size="15" value=""/><br>
                Server Username: <input name="username" type="text" id="username" size="15" value=""/><br>
                Server Password: <input name="password" type="text" id="password" size="15" value=""/><br>
                Server File Path: <input name="filepath" type="text" id="filepath" size="35" value=""/><br>
                Please choose a file: <input name="txt_file" type="file" id="txt_file" tabindex="1" size="35" onChange="txt_fileName.value=txt_file.value" /><br><br>
                <input name="txt_fileName" type="hidden" id="txt_fileName" tabindex="99" size="1" />
     
                <input type="submit" name="SubmitFile" value="Upload File" accesskey="ENTER" tabindex="2" />
          </form>
      </body>
    </html>

  2. #2
    Membre émérite
    Inscrit en
    Juillet 2003
    Messages
    625
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 625
    Par défaut
    Bonjour,

    je me retrouve confronter à une erreur ligne 29
    peux tu nous dire quel est le message d'erreur ?

  3. #3
    Membre du Club
    Inscrit en
    Décembre 2010
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Décembre 2010
    Messages : 7
    Par défaut
    Citation Envoyé par syl2095 Voir le message
    Bonjour, peux tu nous dire quel est le message d'erreur ?
    Bonjour, merci de ta réponse rapide, voilà mon message d'erreur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Warning: ftp_put() [function.ftp-put]: Could not create file. in /homez.103/xxx/xxx/xxx/test/testftp.php on line 29

  4. #4
    Membre émérite
    Inscrit en
    Juillet 2003
    Messages
    625
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 625
    Par défaut
    as tu les droits d'écriture dans le dossier concerné ?

    le chemin vers le chemin concerné est il correct ? ( pas d'espaces, accents... )

  5. #5
    Membre du Club
    Inscrit en
    Décembre 2010
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Décembre 2010
    Messages : 7
    Par défaut
    Citation Envoyé par syl2095 Voir le message
    as tu les droits d'écriture dans le dossier concerné ?

    le chemin vers le chemin concerné est il correct ? ( pas d'espaces, accents... )
    Alors, tous les droits étaient activés à part ceux pour les groupes, que j'ai donc activé aussi. Maintenant quand je lance mon fichier PHP, je me retrouve avec ce message d'erreur :

    Internal Server Error

    The server encountered an internal error or misconfiguration and was unable to complete your request.

    Please contact the server administrator, postmaster@www.xxxxx.com and inform them of the time the error occurred, and anything you might have done that may have caused the error.

    More information about this error may be available in the server error log.
    Peut-être juste un bug momentané ? ^^'

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    104
    Détails du profil
    Informations personnelles :
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations forums :
    Inscription : Octobre 2010
    Messages : 104
    Par défaut
    Tu devrais vérifier la valeur de la variable MAX_FILE_SIZE dans ton php.ini, elle désigne la taille max du fichier que tu peux uploader. Compare cette valeur à la taille du fichier que tu tentes d'upload.

    Je ne dis pas que ça résoudra ton problème mais ça peut-être une piste.

  7. #7
    Membre du Club
    Inscrit en
    Décembre 2010
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Décembre 2010
    Messages : 7
    Par défaut
    Citation Envoyé par proxichou Voir le message
    Tu devrais vérifier la valeur de la variable MAX_FILE_SIZE dans ton php.ini, elle désigne la taille max du fichier que tu peux uploader. Compare cette valeur à la taille du fichier que tu tentes d'upload.

    Je ne dis pas que ça résoudra ton problème mais ça peut-être une piste.
    non je ne pense pas, j'essaye juste d'upload un .txt avec 3 mots dedans ^^'


    personne d'autres ne peut m'aider ?

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    104
    Détails du profil
    Informations personnelles :
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations forums :
    Inscription : Octobre 2010
    Messages : 104
    Par défaut
    Il faudrait trouver le fichier error log du serveur histoire d'en savoir un peu plus sur l'erreur.

Discussions similaires

  1. Impossibilité d'upload un fichier via FTP
    Par Griffith dans le forum Internet
    Réponses: 6
    Dernier message: 13/06/2007, 19h38
  2. Envoyer un fichier via FTP via un socket
    Par JnJp28 dans le forum Entrée/Sortie
    Réponses: 2
    Dernier message: 24/05/2007, 20h37
  3. Upload de fichier via FTP / OpenFileDialog
    Par Pokerstar dans le forum VB.NET
    Réponses: 2
    Dernier message: 18/05/2007, 03h34
  4. [applet ]envoyer fichier via ftp? quelle solution?
    Par chouchou93 dans le forum Applets
    Réponses: 5
    Dernier message: 27/03/2006, 15h35
  5. []transfert de fichiers via FTP
    Par ista9im dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 01/10/2005, 23h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo