[Upload] Variable dans le chemin pas prise en compte
Tout d'abord, bonjour à tous !
(C'est mon premier message dans votre "communauté". :mouarf: )
Voila mon problème.
Je travaille sur la partie "administration" de mon site.
Je souhaite pouvoir uploader des images dans des dossiers spécifiques, pour ensuite pouvoir créer un diaporama "automatique" des images contenues dans ces dossiers.
Je suis arrivé à la partie "Upload" du script...
J'ai un script qui fonctionne parfaitement lorsque le chemin du dossier souhaité est "complet", par exemple :
Code:
../images/collec/dossimg/
Mais dans mon cas, j'ai besoin d'avoir :
Code:
../images/collec/'.$_SESSION['dossimg'].'/'
Seulement, rien à faire...
Si j'affiche la valeur de $_SESSION['dossimg'], elle affiche bien le nom du dossier souhaité...
Si j'affiche la valeur du chemin, pas de problème...
Mais lors de l'Upload, le script enregistre bien l'image, mais dans le dossier précédent !:(
Ca fait des jours que je retouche, réécrit ce script... et rien à faire !:evilred:
Je vous colle le script récalcitrant :
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 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137
| <?php
session_start();
?>
<?php // On se connecte d'abord à MySQL :
include('../connection.php');?>
<?php
$_SESSION['ID'] = $_GET['ID'];
$_SESSION['nomprod'] = $_GET['nomprod'];
$_SESSION['dossimg'] = $_GET['dossimg'];
?>
<?php echo $_SESSION['dossimg']; // renvoie bien le nom du dossier choisi ?>
<?php
//----------------------------
// DEFINITION DES VARIABLES
//----------------------------
$target = '../images/collec/'.$_SESSION['dossimg'].'/'; // Repertoire cible
$extension = "jpg"; // Extension du fichier sans le .
$max_size = 300000; // Taille max en octets du fichier
$width_max = 293; // Largeur max de l'image en pixels
$height_max = 293; // Hauteur max de l'image en pixels
?><br>
<br>
<?php echo "$target"; //renvoie bien le chemin complet... ?>
<?php //---------------------------------------------
// DEFINITION DES VARIABLES LIEES AU FICHIER
//---------------------------------------------
$nom_file = $_FILES['fichier']['name'];
$taille = $_FILES['fichier']['size'];
$tmp = $_FILES['fichier']['tmp_name'];
//----------------------
// SCRIPT D'UPLOAD
//----------------------
if($_POST['posted'])
{
// On vérifie si le champ est rempli
if($_FILES['fichier']['name'])
{
// On vérifie l'extension du fichier
if(substr($nom_file,-3) == $extension)
{
// On récupère les dimensions du fichier
$infos_img = getimagesize($_FILES['fichier']['tmp_name']);
// On vérifie les dimensions et taille de l'image
if(($infos_img[0] <= $width_max) && ($infos_img[1] <= $height_max) && ($_FILES['fichier']['size'] <= $max_size))
{
// Si c'est OK, on teste l'upload
if(move_uploaded_file($_FILES['fichier']['tmp_name'],$target.$_FILES
['fichier']['name']))
{
// Si upload OK alors on affiche le message de réussite
echo '<p align="center">';
echo '<font face="Verdana" size="2" color="#FF0000">';
echo '<b>Image uploadée avec succès !</b>';
echo '</font>';
echo '<hr>';
echo '<b>Fichier :</b> '.$_FILES['fichier']['name'].'</br>';
echo '<b>Taille :</b> '.$_FILES['fichier']['size'].' Octets</br>';
echo '<b>Largeur :</b> '.$infos_img[0].' px</br>';
echo '<b>Hauteur :</b> '.$infos_img[1].' px</br>';
echo '<hr>';
echo '<br><br>';
}
else
{
// Sinon on affiche une erreur système
echo '<p align="center">';
echo '<font face="Verdana" size="2" color="#FF0000">';
echo '<b>Problème lors de l\'upload !</b><br><br><b>'.$_FILES['fichier']['error'].'</b>';
echo '</font><br><br>';
}
}
else
{
// Sinon on affiche une erreur pour les dimensions et taille de l'image
echo '<p align="center">';
echo '<font face="Verdana" size="2" color="#FF0000">';
echo '<b>Problème dans les dimensions ou taille de l\'image !</b>';
echo '</font><br><br>';
}
}
else
{
// Sinon on affiche une erreur pour l'extension
echo '<p align="center">';
echo '<font face="Verdana" size="2" color="#FF0000">';
echo '<b>Votre image ne comporte pas l\'extension .JPG !</b>';
echo '</font><br><br>';
}
}
else
{
// Sinon on affiche une erreur pour le champ vide
echo '<p align="center">';
echo '<font face="Verdana" size="2" color="#FF0000">';
echo '<b>Le champ du formulaire est vide !</b>';
echo '</font><br><br>';
}
}
?>
<html>
<head>
<title>Upload d'une image sur le serveur !</title>
</head>
<body>
<form enctype="multipart/form-data" action="<?php echo $PHP_SELF; ?>" method="POST">
<font face="Verdana" size="2" color="#000000">
<b>Envoyer le fichier :</b>
</font>
<br><br>
<input type="hidden" name="posted" value="1">
<input name="fichier" type="file">
<input type="submit" value="Uploader">
</FORM>
</body>
</html> |
Voila... Si quelqu'un pouvait m'aider à régler ce problème... :roll:
Merci d'avance ! :mrgreen: