Undefined index: img

Suivre ce topic
Ce topic est suivi par : Personne...
Profil introuvable

Profil introuvable Le 24 septembre 2020 à 20:35

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