Bonjour à tous,
J'ai toujours des problèmes avec ma fonction "supprimer"
Je vous mets le code:
contact.php
<php>
<HTML><HEAD>
<TITLE>contact.php</TITLE>
</HEAD>
<BODY>
<FORM>
Nom: <INPUT TYPE=TEXT NAME='Nom'><BR>
Prenom: <INPUT TYPE=TEXT NAME='Prenom'><BR>
Fonction: <INPUT TYPE=TEXT NAME='Fonction'><BR>
Societe: <INPUT TYPE=TEXT NAME='Societe'><BR>
Téléphone: <INPUT TYPE=TEXT NAME='Telephone'><BR>
Email: <INPUT TYPE=TEXT NAME='Email'><BR>
Adresse: <INPUT TYPE=TEXT NAME='Adresse'><BR>
Commentaire: <INPUT TYPE=TEXT NAME='Commentaire'><BR>
<INPUT TYPE=SUBMIT VALUE='ajouter' NAME='ajouter' >
</FORM>
<?php
$connexion = mysql_connect("localhost", "dbcolas", "sn2011" );
if (!$connexion)
{
echo "Connexion impossible \n";
exit;
}
if (!mysql_select_db("suivi" ))
{
echo "Connexion base impossible\n";
exit;
}
$res=mysql_query("SELECT * FROM contact",$connexion) or die(mysql_error());
//echo $res;
$Nom = $_GET['Nom'];
$Prenom = $_GET['Prenom'];
$Fonction = $_GET['Fonction'];
$Societe = $_GET['Societe'];
$Telephone = $_GET['Telephone'];
$Email = $_GET['Email'];
$Adresse = $_GET['Adresse'];
$Commentaire = $_GET['Commentaire'];
//FONCTION AJOUTER
if( isset( $_GET['ajouter'] ) )
{
echo "Entrez vos champs";
$requete = mysql_query("INSERT INTO contact (Id, Nom, Prenom, Fonction, Societe, Telephone, Email, Adresse,
Commentaires) VALUES ('$Id', '$Nom', '$Prenom', '$Fonction', '$Societe', '$Telephone', '$Email', '$Adresse', '$Commentaire')" );
}
?>
<table>
<TR><th>--------------------</th><th>
<?
//AFFICHAGE DES RESULTATS
$req= mysql_query("SELECT * FROM contact" );
while($data=mysql_fetch_object($req))
{
echo '<tr><td>',$data->Id, '</td><td>', $data->Nom,'</td><td>',$data->Prenom,'</td></tr>';
?>
<TR><th>--------------------</th><th>
<?php
//FONCTION SUPPRESSION
echo "<a href=\"suppression.php?Id=" . $data['Id'] . "><INPUT TYPE=SUBMIT VALUE='supprimer' NAME='supprimer' ></a>";
//FONCTION MODIFIER
//echo "<a href=\"modification.php?Id=" . $data['Id'] . "><INPUT TYPE=SUBMIT VALUE='modifier' NAME='modifier' ></a>";
}
?>
</BODY></HTML>
</php>
suppression.php
<php>
<?php
$connexion = mysql_connect("localhost", "dbcolas", "sn2011" );
if (!$connexion)
{
echo "Connexion impossible \n";
exit;
}
if (!mysql_select_db("suivi" ))
{
echo "Connexion base impossible\n";
exit;
}
$Id = $_GET['Id'];
$req=mysql_query("DELETE FROM contact WHERE Id='$Id'" )or die(mysql_error());
//echo $Id;
header("Location:contact.php" );
exit;
</php>
Après enquête, il s'avère qu'il y a un décalage d'une unité entre l'Id affiché dans mon tableau et l'Id en écho de ma requéte supprimer. Donc çà ne marche pas (sans me renvoyer d'erreur) puisque le programme doit supprimer un truc qui n''existe pas (ou qui est vide).
Quelqu'un a t-il une idée de ce que je dois pour régler ce problème?