Bouton SUPPRIMER ne fonctionne pas :/

Fermé
Yass - Modifié par baladur13 le 18/08/2011 à 21:17
 Yass - 19 août 2011 à 00:01
Bonjour,

Je travaille sur un site pour l'école, ça marche plutot pas mal mais mon bouton supprimer ne marche pas :/.

Au début, dans la page, j'affiche plein de media à partir de ma base de donée, avec des croix à coter pour supprimer/modifier les medias.

 <div id="contenu">   
 <h1>Administration du site.</h1>   
      
    <h2>Suppresion du medias :</h2>    
       
    <table>    
     <tr><td class="tableauAdmin"><span class="titreTableau">Id :</span></td><td class="tableauAdmin"><span class="titreTableau">Titre :</span></td><td class="tableauAdmin"><span class="titreTableau">Auteur :</span></td><td class="tableauAdmin"><span class="titreTableau">Type :</span></td></tr>    
     <?php   
        
     include 'config.php';   
     $id = $_GET['id'];   
     if(connexion_db()) {   
     $requete = "SELECT med.id, med.titre, med.auteur, typ.nom_type FROM Media med INNER JOIN Type typ ON typ.id = med.id_type WHERE med.id='$id'";   
     $resultat = mysql_query($requete);   
       if(!$resultat) {   
        echo "Impossible de traiter la requète.";   
       }   
       else {   
        $tab = mysql_fetch_assoc($resultat); {   
        echo '<tr>';   
        echo '<td>'.$tab['id'].'</td>';   
        echo '<td>'.$tab['titre'].'</td>';   
        echo '<td>'.$tab['auteur'].'</td>';   
        echo '<td>'.$tab['nom_type'].'</td>';   
        echo '</tr>';   
        }   
       }   
      }   
      mysql_free_result($resultat);   
     ?>   
    </table>   
    <p>Etes-vous certain de vouloir supprimer ce media ?</p>   
    <p>Attention! Si vous supprimez ce Media, vous supprimerez toutes les données en faisant partie.</p>   
    <p><input type="submit" value="Supprimer" name="Envoi"/></p>   
       
    <?PHP   
    if(isset($_POST['Envoi'])) {   
     $requete = "DELETE FROM Media WHERE id='$id'";   
     $resultat = mysql_query($requete);   
        
     if(!$resultat) {   
      echo "<p>Impossible de traiter la requète.</p>";   
     }   
     else {   
      echo "<p>Media supprimée.</p>";   
     }   
    }   
    mysql_close();   
    ?>   
    <a href="afficheall.php">Retour</a> au tableau complet.    
    </div>


Voilà mon code , qu'est ce qui ne vas pas ? Merci.
A voir également:

2 réponses

Bonsoir,

Comportement normal, tu ne transmets aucune variable à ta requête de suppression et pour cause, un bouton de formulaire sans formulaire, ça ne peut pas fonctionner...
Replonge-toi dans les bases du HTML et/ou du PHP
2
Je peux pas tester maintenant, mais penses tu que ça ira comme ça ? merci en tous cas, j'avais carrement pas fait attention :/ ..


<h2>DELETE MEDIA :</h2>  
    <form action="<?PHP $_SERVER['PHP_SELF'] ?>" method="post" enctype="application/x-www-form-urlencoded"> 
     <fieldset> 
      <?PHP 
       
      include 'config.php'; 
       
      $id = $_GET['id']; 
      if(connexion_db()) { 
     $requete = "SELECT med.id, med.titre, med.auteur, typ.nom_type FROM Media med INNER JOIN Type typ ON typ.id = med.id_type WHERE med.id='$id'"; 
     $resultat = mysql_query($requete); 
       if(!$resultat) { 
        echo "Impossible de traiter la requète."; 
       } 
     else { 
       $tab = mysql_fetch_assoc($resultat); 
     }  
           } 
     ?> 
      <label>Titre: <input type="text" name="titre" value="<?PHP echo $tab['titre'] ?> "/></label><br/> 
      <label>Auteur: <input type="text" name="auteur" value="<?PHP echo $tab['auteur'] ?> "/></label><br/> 
      <label>Type-2 pour blueRay,3 pour dvd, 4 pour cd-: <input type="text" name="id_type" value="<?PHP echo $tab['id_type'] ?> "/></label><br/> 
      <input type="submit" value="Delete" name="Envoi"/> 
       
     </fieldset> 
    </form> 
    <p>Etes-vous certain de vouloir supprimer ce media ?</p> 
    <p>Attention! Si vous supprimez ce Media, vous supprimerez toutes les données en faisant partie.</p> 
    <p><input type="submit" value="Supprimer" name="Envoi"/></p> 
     
    <?PHP 
    if(isset($_POST['Envoi'])) { 
     $requete = "DELETE FROM Media WHERE id='$id'"; 
     $resultat = mysql_query($requete); 
      
     if(!$resultat) { 
      echo "<p>Impossible de traiter la requète.</p>"; 
     } 
     else { 
      echo "<p>Media supprimée.</p>"; 
     } 
    } 
    mysql_close(); 
    ?> 
    <a href="afficheall.php">Retour</a> au tableau complet.  
    </div> 

Merci :)
0
ça ne fonctionnera pas non plus car dans ton script (et notamment dans la requête de suppression) tu as une variable $id qui ne provient pas du formulaire, par contre le formulaire te transmet bien une variable nommée $_POST['id_type'] qui est censée contenir la valeur de l'id contenu dans la table de la bdd
0
Hum, je ne comprends pas très bien ce que tu veux dire, pour un updateMedia, ça marche comme ça enfaite ..
Peut etre mettre un <input type= "hidden" name= "identifiant" value="<?PHP echo $tab['id'] ?> "/> ?
0