Bonsoir, je suis toujours entrain d’apprendre le php, et j’essaye petit à petit de comprendre le fonctionnement de certains scripts.
J’ai commencer un formulaire d’inscription, et j’ai picoré à droite à gauche des bribes de codes, afin d’afficher les utilisateur et un bouton supprimer à côté afin de supprimer des utilisateurs.
Voici le code :
<?php
mysql_connect("localhost", "root", "glaces");
mysql_select_db("meteo");
// Requête qui efface un enregistrement suivant son ID
if (isset($_POST['supprimer']))
{
$id_a_supprimer = isset($_POST['ID']) && is_numeric($_POST['ID'])? intval($_POST['ID']) : null;
$query = "DELETE FROM membre WHERE ID = ".$id_a_supprimer."";
$delete = mysql_query($query) or die(mysql_error());
}
// Requête qui récupère toutes les données de la table
$query = "SELECT ID, login FROM membre";
$liste = mysql_query($query) or die(mysql_error());
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Supression client</title>
</head>
<body>
<div>
<?php if (isset($delete) && $delete == 1) echo '1 enregistrement à été supprimé';?>
</div>
<div>
<form action = "#" method = "post">
<?php
while ($row_client = mysql_fetch_assoc($liste))
{ ?>
<p>
Nom, prénom : <?php echo $row_client['login'].' ';?>
<input name = "supprimer" type = "submit" value = "Supprimer" />
<input type = "hidden" name = "ID" value = "<?php echo $row_client['ID']?>" />
</p>
<?php } ?>
</form>
</div>
</body>
</html>
Le problème est que cela ne fonctionne pas comme prévu, quand on clique sur supprimer il supprime n’importe lequel.
if ($_POST['supprimer']) { $id_a_supprimer = $_POST['ID'] && is_numeric($_POST['ID'])? intval($_POST['ID']) : null; $query = "DELETE FROM membre WHERE ID = ".$id_a_supprimer.""; $delete = mysql_query($query) or die(mysql_error()); }
Sinon tu à des cms joomla, xoops et nuked-klan qui est bien si tu veu découvrir un code simple
Edité le 25/04/2010 à 22:48
je doit coller et remplacer quelle ligne avec ce code ?
if ($_POST['supprimer']) { $id_a_supprimer = $_POST['ID'] && is_numeric($_POST['ID'])? intval($_POST['ID']) : null; $query = "DELETE FROM membre WHERE ID = ".$id_a_supprimer.""; $delete = mysql_query($query) or die(mysql_error()); }
voici le code intégré à ma page, toujours des suppression aléatoire.
<?php
mysql_connect("localhost", "root", "glaces");
mysql_select_db("meteo");
// Requête qui efface un enregistrement suivant son ID
if ($_POST['supprimer']) { $id_a_supprimer = $_POST['ID'] && is_numeric($_POST['ID'])? intval($_POST['ID']) : null;
$query = "DELETE FROM membre WHERE ID = ".$id_a_supprimer."";
$delete = mysql_query($query) or die(mysql_error()); }
// Requête qui récupère toutes les données de la table
$query = "SELECT ID, login FROM membre";
$liste = mysql_query($query) or die(mysql_error());
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Supression client</title>
</head>
<body>
<div>
<?php if (isset($delete) && $delete == 1) echo '1 enregistrement à été supprimé';?>
</div>
<div>
<form action = "#" method = "post">
<?php
while ($row_client = mysql_fetch_assoc($liste))
{ ?>
<p>
Nom, prénom : <?php echo $row_client['login'].' ';?>
<input name = "supprimer" type = "submit" value = "Supprimer" />
<input type = "hidden" name = "ID" value = "<?php echo $row_client['ID']?>" />
</p>
<?php } ?>
</form>
</div>
</body>
</html>