Dans un formulaire, je demande d'envoyer une image.
Au début, je mettais une alerte avec la phrase "pas d'image envoyée" mais les utilisateurs aimeraient avoir une image par défaut s'ils n'ont pas de bonne photo.
Voici mon code :
Code : Tout sélectionner
if(isset($_POST["sub"]))
{
// (lignes précédentes retirées)
$image_file = $_FILES["image"];
echo 'Vérification de l\'envoi d\'image : ' . $image_file["name"] . ' <br> '; // affiche le nom d'image envoyé
$imageavirer = $image_file["name"]; // met le nom de l'image en variable pour suppression ultérieure
// Pas d'image, on affiche l'erreur
if (!isset($image_file))
{
echo '<h3>Pas d´image envoyée</h3>';
die('No file uploaded.');
}
if ($image_file["name"])
{
echo 'OK Image envoyée !';
}
else
{
$citation_1 = '1 <img src = "https://mondomaine.tld/images/oups.png">';
$citation_2 = '2 <img src = "https://mondomaine.tld/images/oups2.png">';
echo 'Pas d`image<br>';
echo ${'citation_' . rand(1, 2)}; // on affichera une image aléatoire pour signaler l'erreur
}
// Déplacement de l'image envoyée
move_uploaded_file(
// emplacement temporaire
$image_file["tmp_name"],
// Nouvel emplacement, __DIR__ est le dossier actuel
__DIR__ . "/images/" . $image_file["name"]
);
$filename = 'images/'.$image_file["name"];
if(exif_imagetype($filename) == IMAGETYPE_GIF)
{
// Conversion gif en PNG
$new_png_img = 'user_image.png';
$png_img = imagepng(imagecreatefromgif($filename), $new_png_img);
}
elseif(exif_imagetype($filename) == IMAGETYPE_JPEG)
{
// Conversion JPG/JPEG en PNG
$new_png_img = 'user_image.png';
$png_img = imagepng(imagecreatefromjpeg($filename), $new_png_img);
}
else
{
// PNG, ne rien faire
$new_png_img = 'user_image.png';
}
$im = imagecreatefrompng('user_image.png');
} // fin issetA chaque fois, j'ai une erreur à la ligne 38 (exif_imagetype...)
comment faire ? Merci