Précédent   Forum des professionnels en informatique > PHP > Scripts
Scripts Forum d'entraide sur les scripts PHP téléchargés. Les meilleurs scripts PHP, la FAQ scripts PHP, toutes les FAQ PHP
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 06/06/2006, 16h23   #1
Invité de passage
 
Inscription : mai 2006
Messages : 4
Détails du profil
Informations forums :
Inscription : mai 2006
Messages : 4
Points : 0
Points : 0
Par défaut Besoin d'aide pour faire fonctionner un Script d'upload d'images

Voici mon script d'uplaod d'image qui marchait bien jusqu'a aujourd'hui.

Code :
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
98
99
100
101
102
103
 
<?php
  /**
   * function formatFileName
   * @access public
   * @param string - nom de fichier à formater
   * @param int - longueur maximale autorisée pour le nom de fichier
   * @return string - nom de fichier formaté
   * @desc Tronque éventuellement le nom de fichier, le convertit en minuscules et
   *           y élimine les caractères potentiellement dangereux.
   */         
   function formatFileName($aFileName, $aMaxLength = 50) {
     $aFileName = strToLower(subStr($aFileName, 0, $aMaxLength));
     $aFileName = ereg_replace('[^a-zA-Z0-9,._\+\()\-]', '_', $aFileName);
 
     return $aFileName;
   } // end of function formatFileName() /2
 
   /* PARAMETRES DE CONFIGURATION DU SCRIPT
    */
 
   /* chemin d'accès au répertoire d'upload (vers où le fichier uploadé temporaire sera transféré)*/
   /* ce répertoire doit EXISTER et être ACCESSIBLE EN ECRITURE !!*/
   $destination_dir = 'C:\Program Files\EasyPHP1-8\www\Phototheque_sp\photos\';
 
   /* taille maximale en octets du fichier à uploader*/
   $file_max_size = 1000000;
 
   /* extensions de fichiers autorisées*/
   $authorized_extensions = array('jpg', 'gif');
 
   /* TRAITEMENT PRINCIPAL
    */   
 
   /* vérifie l'existence du répertoire de destination */
   if (!is_dir($destination_dir)) {
     echo 'Veuillez indiquer un r&eacute;pertoire destination correct !';
     die();
   }
 
   // vérifie que répertoire de destination a des droits en écriture
   if (!is_writeable($destination_dir)) {
     echo 'Veuillez spécifier des droits en écriture pour le r&eacute;pertoire destination !';
     die();      
   }   
 
   // réception du formulaire
   if (isSet($_POST['submitFile'])) {
 
     // vérifie qu'un fichier a bien été soumis
     if (isSet($_FILES) && is_array($_FILES)) {
 
       // pas d'erreur lors de l'upload
       if ($_FILES['photo']['error'] == UPLOAD_ERR_OK) {
 
         // vérifie la taille en octets
         if ($_FILES['photo']['size'] <= $file_max_size) {
 
           // vérifie l'extension du fichier recu
           // il est aussi possible (et sans doute mieux) de se baser sur $_FILES['aFile']['type']
           // qui retourne le type MIME correspondant (par exemple: image/pjpeg)         
           $lastPos = strRChr($_FILES['photo']['name'], ".");
           if ($lastPos !== false && in_array(strToLower(subStr($lastPos, 1)), $authorized_extensions)) {
 
             // définit un nom de fichier destination unique à partir du nom du fichier original formaté
            /* $destination_file = time().formatFileName($_FILES['photo']['name']);           */ 
 
             // déplace le fichier uploadé du répertoire temporaire
             // vers les répertoire/fichier destination spécifiés
             if (move_uploaded_file($_FILES['photo']['tmp_name'],
                                         $destination_dir.DIRECTORY_SEPARATOR.$destination_file)) {
               echo '<h6>Fichier valide et upload&eacute; correctement.</h6>';   
             } else { // error sur move_uploaded_file
               echo '<h6>Le fichier n\'a pas &eacute;t&eacute; upload&eacute; correctement !</h6>';
             }
           } else { // pas d'extension ou mauvaise extension
             echo '<h6>Mauvaise extension !</h6>';
           }      
         } else { // Taille maximale dépassée
           echo '<h6>Fichier trop volumineux !</h6>';
         }
       } else { // Erreur lors de l'upload
         switch ($_FILES['photo']['error']){
           case UPLOAD_ERR_INI_SIZE:
              echo '<h6>Le fichier upload&eacute; d&eacute;passe la valeur sp&eacute;cifi&eacute;e
                       pour upload_max_filesize dans php.ini.</h6>';
              break;
           case UPLOAD_ERR_FORM_SIZE:
              echo '<h6>Le fichier upload&eacute; d&eacute;passe la valeur sp&eacute;cifi&eacute;e
                       pour MAX_FILE_SIZE dans le formulaire d\'upload.</h6>';
              break;
           case UPLOAD_ERR_PARTIAL:
              echo '<h6>Le fichier n\'a &eacute;t&eacute que partiellement upload&eacute;.</h6>';
              break;                            
           default:
              echo '<h6>Aucun fichier n\'a &eacute;t&eacute upload&eacute;.</h6>';
         } // switch
       }   
     } else { // aucun fichier reçu
       echo '<h6>Pas de fichier recu</h6>';
     }
   } // fin de réception de formulaire
?>
Il m'indique maintenant une erreur à la ligne 29 au niveau de la verification du format du fichier. Etant débutant en php, je n'arrive pas a trouver d'ou viens cette erreur.
Je vous remercie d'avance pour votre aide.
PaoOo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/06/2006, 23h13   #2
Modérateur
 
Avatar de mathieu
 
Inscription : juin 2003
Messages : 4 893
Détails du profil
Informations forums :
Inscription : juin 2003
Messages : 4 893
Points : 4 466
Points : 4 466
et quel est le message d'erreur ?
__________________
Modérateur PHP
mathieu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/06/2006, 12h05   #3
Invité de passage
 
Inscription : mai 2006
Messages : 4
Détails du profil
Informations forums :
Inscription : mai 2006
Messages : 4
Points : 0
Points : 0
Voici le message d'erreur :

Citation:
Parse error: parse error in c:\program files\easyphp1-8\www\phototheque_sp\upload.php on line 29
PaoOo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/06/2006, 13h12   #4
Membre habitué
 
Avatar de Pahcixam
 
Étudiant
Inscription : avril 2006
Messages : 266
Détails du profil
Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : avril 2006
Messages : 266
Points : 108
Points : 108
Salut la ligne 29 c'est celle-ci si je ne me trmope pas:

$authorized_extensions = array('jpg', 'gif');

Je ne vois pas ce qui peut clocher, essaye d'enlever l'espace devant 'gif' mais je doute que ça vienne de là.
Pahcixam est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/06/2006, 21h03   #5
Membre éclairé
 
Inscription : décembre 2004
Messages : 658
Détails du profil
Informations personnelles :
Âge : 29
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : décembre 2004
Messages : 658
Points : 317
Points : 317
et si la reponse etait toute bete

Citation:
$authorized_extensions = array("jpg", "gif");
zulot est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/06/2006, 21h24   #6
Membre du Club
 
Avatar de luggerhouse
 
Inscription : juin 2006
Messages : 62
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 62
Points : 67
Points : 67
Pluttôt débile de probleme...

J,ai modifié la ligne 22 pour
Code :
1
2
 
$destination_dir = "C:\Program Files\EasyPHP1-8\www\Phototheque_sp\photos\";
Puis maintenant
Citation:
PHP Parse error: parse error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /var/www/html/recettes/test7.php on line 47


Plus de temps... Journée terminée (enfin!)

Bonne chance!
LuggerHouse
luggerhouse est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 19h59.


 
 
 
 
Partenaires

Hébergement Web