Bonjour,
J'ais récupéré un script d'upload permettant de télécharger et d'afficher une galerie photo.
Le problème vient du fait que l'upload echoue systématiquement. Les champs sont pourtant bien renseigné. Si quelqu'un saurait d'ou peut provenir le problème cela m'aiderait beaucoup.
Voici la portion de code
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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
 
// Récupération du dossier dans lequel le fichier sera uploadé    //
$DESTINATION_FOLDER = $_POST["up/"];                            //
// Taille maximale de fichier, valeur en bytes                    //
$MAX_SIZE = 1000000;                                            //
// Récupération de l'url de retour                                //
$RETURN_LINK = $_SERVER['HTTP_REFERER'];                        //
// Définition des extensions de fichier autorisées (avec le ".")//
$AUTH_EXT = array(".jpg", ".bmp", ".gif");                                            //
// ############################################################ //
// Fonction permettant de créer un lien de retour automatique
 
function createReturnLink(){
    global $RETURN_LINK;
    echo "<a href='".$RETURN_LINK."'>Retour</a><br>";
}
 
// Fonction permettant de vérifier si l'extension du fichier est
// autorisée.
 
function isExtAuthorized($ext){
    global $AUTH_EXT;
    if(in_array($ext, $AUTH_EXT)){
        return true;
    }else{
        return false;
    }
}
 
// On vérifie que le champs contenant le chemin du fichier soit
// bien rempli.
 
if(!empty($_FILES["file"]["name"])){
 
    // Nom du fichier choisi:
    $nomFichier = $_FILES["file"]["name"] ;
    // Nom temporaire sur le serveur:
    $nomTemporaire = $_FILES["file"]["tmp_name"] ;
    // Type du fichier choisi:
    $typeFichier = $_FILES["file"]["type"] ;
    // Poids en octets du fichier choisit:
    $poidsFichier = $_FILES["file"]["size"] ;
    // Poids en Kilo-octets du fichier choisit:
    $poidsFichierK = $poidsFichier/1024;
    // Pré formatage en affichage avec 0 chiffre après la virgule , donc pas de virgule.
    $poidsFichierK = sprintf("%.0f", $poidsFichierK) ;
    // Code de l'erreur si jamais il y en a une:
    $codeErreur = $_FILES["file"]["error"] ;
    // Extension du fichier
    $extension = strrchr($nomFichier, ".");
 
    // Si le poids du fichier est de 0 bytes, le fichier est
    // invalide (ou le chemin incorrect) => message d'erreur
    // sinon, le script continue.
    if($poidsFichier <> 0){
        // Si la taille du fichier est supérieure à la taille
        // maximum spécifiée => message d'erreur
        if($poidsFichier < $MAX_SIZE){
            // On teste ensuite si le fichier a une extension autorisée
            if(isExtAuthorized($extension)){
                // Ensuite, on copie le fichier uploadé ou bon nous semble.
                $uploadOk = move_uploaded_file($nomTemporaire, $DESTINATION_FOLDER.$nomFichier);
                if($uploadOk){
                                        echo "L'upload a réussi !<br><br>";
                                        echo "Nom du Fichier : $nomFichier<br>";
                                        echo "Taille du Fichier : $poidsFichierK Ko<br>";
                                        echo "URL du Fichier : http://www.crazytchat.com/upload/up/<br><br>";
                                        echo "Aperçu:<br><br>";
                                        switch ($extension) { //Tu fais écrire du html par le php
                                        case ".jpeg": echo "<IMG SRC='$nomFichier'>";break;
                                        case ".bmp": echo "<IMG SRC='$nomFichier'>";break;
                                        case ".gif": echo "<IMG SRC='$nomFichier'>";break;
                                                default: echo "<IMG SRC='error/inconnu.gif'>"; }
                                        echo "<br><br>";
                                        echo(createReturnLink());
                }else{
                    echo("L'upload a échoué !<br><br>");
                    echo(createReturnLink());
                }
            }else{
                echo ("Les fichiers avec l'extension $extension ne peuvent pas être uploadés !<br>");
                echo (createReturnLink()."<br>");
            }
        }else{
            $tailleKo = $MAX_SIZE / 100;
            echo("Vous ne pouvez pas uploader de fichiers dont la taille est supérieure à : $tailleKo Ko.<br>");
            echo (createReturnLink()."<br>");
        }        
    }else{
        echo("Le fichier choisi est invalide !<br>");
        echo (createReturnLink()."<br>");
    }
}else{
    echo("Vous n'avez pas choisi de fichier !<br>");
    echo (createReturnLink()."<br>");
}
?>
Merci d'avance
webide


[Edit] Ce sondage a été réinitialisé début 2009.