Undefined index: img
- Accueil
- Forum
- Programmation
- PHP
- Undefined index: img
Profil introuvable Le 24 septembre 2020 à 20:35 (Édité le 1 janvier 1970 à 01:00)
Bonjour à tous, je viens ici vous faire part d'un problème que j'ai lors de l'upload d'une image.
J'ai l'erreur : Notice: Undefined index: img in... se faisant sur trois lignes différentes.
<?php
session_start();
try
{
$bdd = new PDO('mysql:host=localhost;dbname=boutique;charset=utf8;port=3308', 'root', '', array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
}
catch(Exception $e)
{
die('Erreur : '.$e->getMessage());
}
if (isset($_POST['ajouter']))
{
if(!empty($_POST['nom_prdt']) AND !empty($_POST['dtl_prdt']) AND !empty($_POST['prix_prdt']) AND
!empty($_POST['ctgr_prdt']) AND !empty($_POST['qnt_prdt']))
{ $nom_sec=strip_tags($_POST['nom_prdt']);
$dtl_sec=strip_tags($_POST['dtl_prdt']);
$image=basename($_FILES['img']['name']);// //première erreur
$chemin='/produitimg';
$taillemax=2097152;
$extentionValide= array('.jpg','.jpeg','.gif','.png');
$extentionimg=strtolower(strrchr($_FILES['img']['name'], '.')); //deuxieme erreur
if (preg_match("#[0-9]+#", $_POST['prix_prdt']))
{
$reqnomprdt=$bdd->prepare('SELECT * FROM produit WHERE nom=?');
$reqnomprdt->execute(array($_POST['nom_prdt']));
$nomprdtexiste=$reqnomprdt->rowCount();
if ($nomprdtexiste==0)
{
if ($_FILES['img']['size']<= $taillemax) // //troisième erreur
{
if(in_array($extentionimg,$extentionValide))
{
$fichier = strtr($fichier,'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ',
'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
$fichier = preg_replace('/([^.a-z0-9]+)/i', '-', $fichier);
$rslt=move_uploaded_file($_FILES['img']['tmp_name'],$chemin . $fichier);
if($rslt)
{
$req=$bdd->prepare('INSERT INTO produit(nom,image,prix,déttaille,catégorie,quantité,date_ajouter)
VALUES(?,:image,?,?,?,?,NOW())');
$req->execute(array($nom_sec,$fichier,$_POST['prix_prdt'],$dtl_sec,$_POST['ctgr_prdt'],$_POST['qnt_prdt']));
$errore="Produit ajouter!";
header('Location:produit.php');
}
else{$errore="Erreur durant l'importation de photos";}
}
else {$errore="votre photos doit etre au format jpg png gif jpeg";}
}
else {$errore=' votre photo ne doit pas dépasser 2Mo';}
}
else{ $errore="Nom de produit déja utilisée veulliez choisir un autre nom !";}
}
else{ $errore="veulliez entrer une valeure numirique pour le prix !";}
}
else{ $errore="Tous les champs doivent être remplis ! "; }
}
if (isset($_POST['annuler']))
{
header('Location:Administration.php');
}
?>
<!DOCTYPE html>
<html>
<head>
<title>Ajouter un produit</title>
<link rel="stylesheet" type="text/css" href="productadd.css">
<link rel="stylesheet" type="text/css" href="../fontawesome-free-5.13.0-web/fontawesome-free-5.13.0-web/css/all.css">
</head>
<body>
<input type="checkbox" id="check">
<div class="nav">
<h1 id="logo">WomenBeauty</h1>
<div class="c">
<ul>
<li><a href="../Acceuille.php">Acceuille</a></li>
<li><a href="#">Accessoires</a></li>
<li><a href="#">Sacs</a></li>
<li><a href="#">Mackeupe</a></li>
<li><a href="#">About</a></li>
</ul>
</div>
<div class="srch">
<input type="text" class="srch-txt" placeholder="Recherche"/>
<a href="#" class="srch-btn"><i class="fas fa-search"></i></a>
</div>
</div>
<div class="sidebar">
<label for="check">
<i class="fas fa-bars" id="sidebar_btn"></i>
</label>
<center>
<img src="../img/capture.png" class="profile_image" alt="">
<h4>Adminecompte</h4>
</center>
<a href="Administration.php"><i class="far fa-user"></i><span>Compte</span></a>
<a href="product.php"><i class="fas fa-table"></i><span>Produits</span></a>
<a href="Commande.php"><i class="fas fa-shopping-bag"></i><span>Commandes</span></a>
<a href="message.php"><i class="far fa-comment-alt"></i><span>Message</span></a>
</div>
<div class="content">
<form method="post" class="form" enctype="multipart/form-data">
<?php if(isset($errore)) { echo '<span><font color="red"; >'. $errore.'</font></span>'; } ?>
<h3 class="h">Ajouter un produit </h3>
<input type="text" name="nom_prdt" placeholder="Le nom du produit " class="m" /><input type="text" name="prix_prdt" placeholder="Prix" class="m" /><br />
<input type="number" name="qnt_prdt" placeholder="Quantité" class="m" /><input name="dtl_prdt" placeholder="Détaille" class="m"/><br />
<select name="ctgr_prdt" placeholder="Catégorie" class="m"><option class="m">sac</option><option class="m">accesoire</option><option class="m">makiage</option></select>
<input type="file" name="img" class="m"><br /><br/>
<input type="submit" value="Ajouter" class="e" name="ajouter" />
<input type="submit" value="Annuler" class="e" name="annuler" />
</form>
</div>
</body>
</html>
Vous devez être connecté pour poster une réponse. Se connecter ou Créer un compte