Bonjour à tous,
Je fait depuis quelques jours des exercices de php dans un livre et je bloque sur l'un d'eux.
Cet exercice à pour but de créer un album photo en ligne et en voici le code :
Le problème est qu' une fois sur le serveur, je test la page et voici le message d'erreur que j'obtiens :
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 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <title>Télécharger un fichier</title> <meta http-equiv="content-type" content="text/html; charset=iso-8859-1"> </head> <body> <h1>Mon album photo en ligne</h1> <h3>Télécharger un fichier</h3> <form action='<?php echo $_SERVER['PHP_SELF'] ?>' method="post" enctype="multipart/form-data"> <input type="file" name="fichier"> <input type="submit" name='submit' value="Télécharger le fichier"> </form> <?php $chemin = "img/"; // On indique le chemin if (isset($_FILES['fichier']) && $_FILES['fichier']['size'] > 0) { $tailleMax = 200000; // On indique la taille en octets $nomTemp = $_FILES['fichier']['tmp_name']; $nomFichier = $_FILES['fichier']['name']; $tailleFichier = $_FILES['fichier']['size']; $typeFichier = GetImageSize($nomTemp); if ($typeFichier[2] == 1 || $typeFichier[2] == 2) { // GIF ou JPG ? if ($tailleFichier <= $tailleMax) { // Fichier trop gros ? if (move_uploaded_file($nomTemp, $chemin . $nomFichier)) { chmod($chemin.$nom_fichier, 0666); echo "<p>Téléchargement <b>réussi</b> ! Taille du fichier : <b>$tailleFichier</b> octets, Nom du fichier : <b>$nomFichier</b><br></p>"; } else { echo "<p>Le téléchargement a malheureusement échoué !</p>"; } } else { echo "<p>La taille du fichier est supérieure à <b>$tailleMax octets</b>, il est donc trop gros !</p>"; } } else { echo "<p>Il ne sagit pas dun fichier GIF ou JPEG valide !</p>"; } echo "<form action='{$_SERVER['PHP_SELF']}' method='post'> <input type='submit' value='OK'></form>"; } $filehandle = opendir($chemin); // Début de la lecture des fichiers while ($file = readdir($filehandle)) { if ($file != "." && $file != "..") { $taille = GetImageSize($chemin . $file); echo "<p><img src='$chemin$file' $taille[3]><br></p>\n"; } } closedir($filehandle); // Fin de la lecture des fichiers ?> </body> </html>
Pour palier à ce problème, l'auteur du livre propose de faire un chmod 777 sur mon dossier img avec filezila(par exemple) et/ou de rajouter la ligne de code qui se trouve à la ligne 28 dans mon code (cad : chmod($chemin.$nom_fichier, 0666)Warning: getimagesize(img/Athlète.jpg): failed to open stream: Operation not permitted in /home/httpd/vhosts/www.xela-design.be/web/albumphoto.php on line 49.
Merci Beaucoup pour votre aide !
@+
Partager