Uploader un fichier en PHP

Résolu
Rayfi Messages postés 234 Statut Membre -  
issanasralli Messages postés 20 Statut Membre -
Bonjour,

Savez-vous comment uploader un fichier en PHP ? Avec cURL ? Autre ?

En gros je veux avoir un équivalent du formulaire html mais en PHP.

Merci d'avance.

3 réponses

  1. diendi Messages postés 62 Date d'inscription   Statut Membre Dernière intervention  
     
    Bonjour,

    Tu peux utiliser ton formulaire HTML et récupérer l'upload côté php, via un fichier que tu nommes upload.php :

    <?php
    $uploads_dir = '/uploads';
    foreach ($_FILES["pictures"]["error"] as $key => $error) {
    if ($error == UPLOAD_ERR_OK) {
    $tmp_name = $_FILES["pictures"]["tmp_name"][$key];
    $name = $_FILES["pictures"]["name"][$key];
    move_uploaded_file($tmp_name, "$uploads_dir/$name");
    }
    }
    ?>

    Au préalable, créer un répertoire /uploads sur ton serveur.
    Ne reste qu'à envoyer ta requête HTML à upload.php.

    Le fichier upload.php est à adapter à tes besoins...
    0
  2. issanasralli Messages postés 20 Statut Membre 2
     
    Voici un bon exemple qui explique l'upload d'un fichier EXCEL 2003:

    formulaire: form.html:

    <form action="form_handle.php" method="POST" enctype="multipart/formdata">
    <input type ="file" name="fich" class="ipnut_20" >
    <input type="submit">
    </form>


    form_handle.php:

    <?php
    $error='';
    if ($_FILES['fich']['error'] > 0)
    $error = "error lors du transfert du fichier";

    if ($_FILES['fich']['error']==UPLOAD_ERR_INI_SIZE)
    $error = "fichier dépassant la taille maximale autorisée par PHP";

    if ($_FILES['fich']['error']==UPLOAD_ERR_FORM_SIZE)
    $error = "fichier dépassant la taille maximale autorisée par le formulaire";

    if ($_FILES['fich']['error']==UPLOAD_ERR_PARTIAL)
    $error = "fichier transféré partiellement";
    echo "name:".$_FILES['fich']['name'].'<br>' ; //Le nom original du fichier, comme sur le disque du visiteur (exemple : mon_fich.png).
    echo "type:".$_FILES['fich']['type'].'<br>' ; //Le type du fichier. Par exemple, cela peut être « image/png ».
    echo "size:".$_FILES['fich']['size'] .'<br>' ; //La taille du fichier en octets.
    echo "tmp_name:".$_FILES['fich']['tmp_name'].'<br>' ; //L'adresse vers le fichier uploadé dans le répertoire temporaire.
    echo "error:".$_FILES['fich']['error'].'/'.$error.'<br>' ; //Le code d'error, qui permet de savoir si le fichier a bien été uploadé.

    if($_FILES['fich']['type']!='application/vnd.ms-excel')
    $error="Le fichier doit etre forcément Excel(xls).";

    if ($_FILES['fich']['error']==UPLOAD_ERR_NO_FILE)
    $error = "fichier manquant";

    echo $error;
    if($error=='')
    {
    $resultat = move_uploaded_file($_FILES['fich']['tmp_name'],'fich.xls');
    $temp = explode(".", $_FILES["fich"]["name"]);
    $extension = end($temp);
    if ($resultat)
    {
    echo '<font color="green"><center>Transfert du fichier réussi<br></font></center>';
    echo '<font color="green"><center>Extension:'.$extension.'<br></font></center>';
    }
    }
    ?>
    0
  3. issanasralli Messages postés 20 Statut Membre 2
     
    Eufff J'ai pas bien lu votre question!!!! Déjà votre question est un peu ambigu!!!???

    Vous pouvez uploader un fichier depuis un serveur A (ou s'exécute le code php ) vers un autre serveur B si tu connectais simplement en FTP vers le serveur B? (https://www.php.net/manual/fr/function.ftp-fput.php
    0