Envoyer des fichiers sur le serveur

Soyez le premier à donner votre avis sur cette source.

Snippet vu 10 450 fois - Téléchargée 27 fois

Contenu du snippet

Envoyer des fichiers sur le serveur et le classer dans un dossier spécifié.

Source / Exemple :


<?PHP
    $Type_Fichier = array(
        "PHP" => "php",
        ".net" => "net",
        "ASP" => "asp",
        "Web" => "www",
    );

    if (!is_dir("upload")) @mkdir("upload");
    if ($_SERVER['REQUEST_METHOD'] == "POST"  &&
        isset($_POST['folder']) && isset($Type_Fichier[$_POST['folder']]) &&
        @is_uploaded_file($_FILES['file']['tmp_name'])) {

        $sFolder = "upload/".strtolower($_POST['folder']);
        if (!is_dir($sFolder) && !@mkdir($sFolder))
          die(" '".$sFolder."'");
        if (!@move_uploaded_file($_FILES['file']['tmp_name'], $sFolder."/".$_FILES['file']['name']))
          die(" '".$sFolder."'");
    }

    echo "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\"><HTML>";
    echo "<HEAD><TITLE>Partage de Fichiers</TITLE>";
    echo "<LINK REL=\"stylesheet\" TYPE=\"text/css\" HREF=\"style.css\">";
    echo "<META HTTP-EQUIV=\"Content-Type\" CONTENT=\"text/html; charset=iso-8859-1\">";
    echo "</HEAD><BODY><H1><CENTER><font face='Comic Sans MS' color=#6666ff><b>
<big>Partage de fichiers</big></b></font></CENTER></H1><br>";
    if ($hDir = opendir("upload")) {
        while (False !== ($sData = readdir($hDir))) {
            if ($sData != "." && $sData != "..") {
                echo "<B>".strtoupper($sData)."</B>";
                echo "<DIV STYLE=\"margin-left: 20px; padding: 2px;\">";
                $hDir2 = opendir("upload/".$sData);
                while (False !== ($sData2 = readdir($hDir2))) {
                    if ($sData2 != "." && $sData2 != "..")
                        echo "<A Href=upload/".$sData."/".$sData2.">".$sData2."</A><BR>";
                }
                closedir($hDir2);
                echo "</DIV><BR>";
            }
        }
        closedir($hDir);
    }
    echo "<FORM ENCTYPE=\"multipart/form-data\" METHOD=\"post\" ACTION=\"".$_SERVER['PHP_SELF']."\">";
    echo "<BR><BR><B>Envoyer le fichier : </B><BR>";
    echo "<INPUT TYPE=\"file\" NAME=\"file\"><BR>Catalogue :";
    if ($langResult)
        echo "<B>".$FICHIER."</B><INPUT TYPE=\"hidden\" NAME=\"folder\" VALUE=\"".$FICHIER."\">"; else {
            echo "<SELECT NAME=\"folder\">";
            $walkFunction = ($FICHIER) ?
                'echo "<OPTION"; if ($v == "'.$FICHIER.'") echo " SELECTED"; echo ">".$v."</OPTION>";' :
                'echo "<OPTION>".$v."</OPTION>";';
            array_walk(array_keys($Type_Fichier), create_function('$v', $walkFunction));
            echo "</SELECT>";
        }
    echo "<BR><BR><INPUT TYPE=\"submit\" VALUE=\"  OK  \">";
    echo "</FORM></BODY></HTML>";

?>

A voir également

Ajouter un commentaire Commentaires
Messages postés
6
Date d'inscription
vendredi 17 avril 2009
Statut
Membre
Dernière intervention
28 février 2012

SVP aide moi
je n arrive pas a le faire marché
j'ai cette erreurs
je l ai mis sur mon serveur et j ai cette erreurs

Not Found

The requested URL /Envoi/upload.php3 was not found on this server.

Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.
Apache/2.2.21 (Unix) mod_ssl/2.2.21 OpenSSL/0.9.8e-fips-rhel5 mod_bwlimited/1.4 Server at sarlunilink.com Port 80

a ce que je dois change quelque chose ???

merci de votre aide
Messages postés
33
Date d'inscription
dimanche 27 avril 2008
Statut
Membre
Dernière intervention
16 septembre 2008

salut,
il marche en effet sur ovh merci, par contre j'aimerai que l'on puisse aussi les supprimer une fois uploadé, je ne sais pas du tout comment faire.
merci d'avance.
Messages postés
100
Date d'inscription
mercredi 9 juin 2004
Statut
Membre
Dernière intervention
26 juin 2010
5
Salut!
Ben, je ne sais pas du tout, parce que chez moi cela marche très bien chez Free, Amen & OVH...
Désolé mais la je ne sais pas...
Messages postés
100
Date d'inscription
mercredi 9 juin 2004
Statut
Membre
Dernière intervention
26 juin 2010
5
Salut!
Ben, je ne sais pas du tout, parce que chez moi cela marche très bien chez Free, Amen & OVH...
Désolé mais la je ne sais pas...
Messages postés
33
Date d'inscription
dimanche 27 avril 2008
Statut
Membre
Dernière intervention
16 septembre 2008

salut,
ton code est tout a fait ce que je recherche sauf que je n'arrive pas a les recupéré les fichiers envoyé il me telecharge des fichier corrompu ou endommager.
Est-ce parce que j'utilise un serveur gratuit (olympe-network) comment faire pour que sa marche
Afficher les 16 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.