Bonjour à tous,
Voilà j'ai fais un script pour uploader une photo (enfin récupérer sur le web et tentative d'adaptation ! )
Si j'uploade une photo avec les bons paramètres dés le départ pas de soucis (mois d'un mega et max 800x800px) la photos s'uploade et est déplacé dans le bon dossier.
Par contre dés que la photo sort des clous impossible de voire figurer mon message d'erreur le script plante et m'affiche inlassablement :
Warning: getimagesize(): Filename cannot be empty in /home/users6/z/zgl5959/www/rentabike/rb_depot.php on line 47
Si après le script de traitement de l'image :
Si je fais un var_dump de $_FILES il ne rempli pas les champs tmp_name, type, error et size ??? (j'image à cause de Getimagesize() )
Ci-après le résultat du var_dump($_FILES) :
array(1) { ["photo"]=> array(5) { ["name"]=> string(19) "WP_20150106_001.jpg" ["type"]=> string(0) "" ["tmp_name"]=> string(0) "" ["error"]=> int(2) ["size"]=> int(0) } }
Si une âme généreuse pouvait jeter un oeil ce serait super cool
Pis accessoirement si quelqu'un pouvait me dire où est précisément le fichier temporaire parce que je n'arrive pas à le retrouver
Modifié par Soxy95 (11 Jun 2016 - 12:02)
Voilà j'ai fais un script pour uploader une photo (enfin récupérer sur le web et tentative d'adaptation ! )
Si j'uploade une photo avec les bons paramètres dés le départ pas de soucis (mois d'un mega et max 800x800px) la photos s'uploade et est déplacé dans le bon dossier.
Par contre dés que la photo sort des clous impossible de voire figurer mon message d'erreur le script plante et m'affiche inlassablement :
Warning: getimagesize(): Filename cannot be empty in /home/users6/z/zgl5959/www/rentabike/rb_depot.php on line 47
Si après le script de traitement de l'image :
// Constantes
define('TARGET', $_SERVER['DOCUMENT_ROOT'].'rentabike/images/'); // Repertoire cible
define('MAX_SIZE', 100000); // Taille max en octets du fichier
define('WIDTH_MAX', 800); // Largeur max de l'image en pixels
define('HEIGHT_MAX', 800); // Hauteur max de l'image en pixels
// Tableaux de donnees
$tabExt = array('jpg','gif','png','jpeg'); // Extensions autorisees
$infosImg = array();
// Variables
$extension = '';
$message = '';
$nomImage = '';
if($_POST['depot'] == "deposer"){
// Traitement de l'upload image
// On verifie si le champ est rempli
if( !empty($_FILES['photo']['name']) ){
var_dump($_FILES);
// Recuperation de l'extension du photo
$extension = pathinfo($_FILES['photo']['name'], PATHINFO_EXTENSION);
// On verifie l'extension du fichier
if(in_array(strtolower($extension),$tabExt)){
// On recupere les dimensions du fichier
$infosImg = getimagesize($_FILES['photo']['tmp_name']);
// On verifie le type de l'image
if($infosImg[2] >= 1 && $infosImg[2] <= 14){
// On verifie les dimensions et taille de l'image
if(($infosImg[0] <= WIDTH_MAX) && ($infosImg[1] <= HEIGHT_MAX) && (filesize($_FILES['photo']['tmp_name']) <= MAX_SIZE)){
// Parcours du tableau d'erreurs
if(isset($_FILES['photo']['error']) && UPLOAD_ERR_OK === $_FILES['photo']['error']){
// On renomme le fichier
$nomImage = uniqid() .'.'. $extension;
// Si c'est OK, on teste l'upload
if(move_uploaded_file($_FILES['photo']['tmp_name'], TARGET.$nomImage)){
$message = 'Upload réussi !';
}else{
// Sinon on affiche une erreur systeme
$message = '<div class="alert alert-danger" role="alert">Problème lors de l\'upload !</div>';
exit();
}
}else{
$message = '<div class="alert alert-danger" role="alert">Une erreur interne a empêché l\'uplaod de l\'image</div>';
exit();
}
}else{
// Sinon erreur sur les dimensions et taille de l'image
$message = '<div class="alert alert-danger" role="alert">Erreur dans les dimensions de l\'image !</div>';
exit();
}
}else{
// Sinon erreur sur le type de l'image
$message = '<div class="alert alert-danger" role="alert">Le photo à uploader n\'est pas une image !</div>';
exit();
}
}else{
// Sinon on affiche une erreur pour l'extension
$message = '<div class="alert alert-danger" role="alert">L\'extension du fichier est incorrecte !</div>';
exit();
}
}
}
Si je fais un var_dump de $_FILES il ne rempli pas les champs tmp_name, type, error et size ??? (j'image à cause de Getimagesize() )
Ci-après le résultat du var_dump($_FILES) :
array(1) { ["photo"]=> array(5) { ["name"]=> string(19) "WP_20150106_001.jpg" ["type"]=> string(0) "" ["tmp_name"]=> string(0) "" ["error"]=> int(2) ["size"]=> int(0) } }
Si une âme généreuse pouvait jeter un oeil ce serait super cool
Pis accessoirement si quelqu'un pouvait me dire où est précisément le fichier temporaire parce que je n'arrive pas à le retrouver
Modifié par Soxy95 (11 Jun 2016 - 12:02)