par
BastouTatou » 19 avr. 2016, 08:06
Bonjour, suite de mes aventures, je souhaite aujourd'hui réaliser un formulaire de suppression, en php (ce n'est pas mon choix, je dois le faire comme ca)
Voici ma première partie sur une première page
Code : Tout sélectionner
<?php
/*<!--connexion à la base de donnée-->*/
$link = mysqli_connect("127.0.0.1","root","","h15478");
/*<!-- test de la connexion à la base de donnée -->*/
if ($link != FALSE)
{
}
else
{
die("Impossible de se connecter : ".mysqli_error());
}
echo "</br>";
/*<!-- création de la requete d'affichage -->*/
$requete1 = "SELECT annonces.titre AS Titre, annonces.texte AS Objet, annonces.dates AS Dates, annonces.visible AS Visible
FROM annonces INNER JOIN categories
ON annonces.IDcategorie=categories.IDcategorie
ORDER BY annonces.dates DESC, annonces.titre ASC";
/*<!-- test de la requete -->*/
$result = mysqli_query($link,$requete1) or die(mysqli_error($link));
/*<!-- création de la requete de selection du numero d'identifiant -->*/
/*<!-- création du tableau-->*/
if ( mysqli_num_rows($result) != 0)
{
/* <!-- creation de l'en-tete du tableau --> */
echo"<form action='supprimer_annonces.php' method='POST'>";
echo "<table border=2px><tr>";
echo "<th>Titre</th>";
echo "<th>Objet</th>";
echo "<th>Date d'ajout</th>";
echo "<th>Visible</th>";
echo "<th>Supprimer</th>";
echo "</tr>";
while ($row = mysqli_fetch_assoc($result))
{
/*<!-- création de la requete de selection du numero d'identifiant -->*/
$requete2 = "SELECT IDannonce FROM annonces";
echo "<tr>";
echo "<td>" . $row["Titre"] . "</td>";
echo "<td>" . $row["Objet"] . "</td>";
echo "<td>" . $row["Dates"] . "</td>";
echo "<td>" . $row["Visible"] . "</td>";
echo "<td>";
echo "<input type=checkbox name='ID[]' value='$requete2'>";
echo "</td>";
echo "</tr>";
} echo "</table>";
echo"<center><input type='submit' name='Supp' value='Valider la suppression'></center>";
echo"</form>";
}
else
{
echo "La requête ne renvoie pas de résultat !";
}
?>
Le problème sur cette partie semble venir de l'ajout de la checkbox puis que le click sur le bouton "Valider la suppression" me renvoit $requete2 et non le résultat de $requete2
Code : Tout sélectionner
<?php
if(isset($_POST['ID']) != FALSE){
foreach($_POST['ID'] as $IDchoisie);
}
else{
echo"<p>Pas de sélection</p>"; die;
}
echo $IDchoisie;
$link = mysqli_connect("127.0.0.1","root","","h15478");
/* test de la connexion à la base de donnée */
if ($link != FALSE)
{
echo "Connexion réussie";
}
else
{
die("Impossible de se connecter : ".mysqli_error());
}
echo "</br>";
/* création de la requete */
$requete = "DELETE FROM annonces
WHERE IDannonce='$IDchoisie'";
/* test de la requete */
$result = mysqli_query($link,$requete) or die(mysqli_error($link));
?>
Dans cette deuxième partie, je ne suis pas sur du codage de mon foreach, si vous pouviez me dire si vous la trouvez correcte j'apprécierais beaucoup.
Merci d'avance aux lecteurs et aux aides
Cordialement
Bonjour, suite de mes aventures, je souhaite aujourd'hui réaliser un formulaire de suppression, en php (ce n'est pas mon choix, je dois le faire comme ca)
Voici ma première partie sur une première page
[code]
<?php
/*<!--connexion à la base de donnée-->*/
$link = mysqli_connect("127.0.0.1","root","","h15478");
/*<!-- test de la connexion à la base de donnée -->*/
if ($link != FALSE)
{
}
else
{
die("Impossible de se connecter : ".mysqli_error());
}
echo "</br>";
/*<!-- création de la requete d'affichage -->*/
$requete1 = "SELECT annonces.titre AS Titre, annonces.texte AS Objet, annonces.dates AS Dates, annonces.visible AS Visible
FROM annonces INNER JOIN categories
ON annonces.IDcategorie=categories.IDcategorie
ORDER BY annonces.dates DESC, annonces.titre ASC";
/*<!-- test de la requete -->*/
$result = mysqli_query($link,$requete1) or die(mysqli_error($link));
/*<!-- création de la requete de selection du numero d'identifiant -->*/
/*<!-- création du tableau-->*/
if ( mysqli_num_rows($result) != 0)
{
/* <!-- creation de l'en-tete du tableau --> */
echo"<form action='supprimer_annonces.php' method='POST'>";
echo "<table border=2px><tr>";
echo "<th>Titre</th>";
echo "<th>Objet</th>";
echo "<th>Date d'ajout</th>";
echo "<th>Visible</th>";
echo "<th>Supprimer</th>";
echo "</tr>";
while ($row = mysqli_fetch_assoc($result))
{
/*<!-- création de la requete de selection du numero d'identifiant -->*/
$requete2 = "SELECT IDannonce FROM annonces";
echo "<tr>";
echo "<td>" . $row["Titre"] . "</td>";
echo "<td>" . $row["Objet"] . "</td>";
echo "<td>" . $row["Dates"] . "</td>";
echo "<td>" . $row["Visible"] . "</td>";
echo "<td>";
echo "<input type=checkbox name='ID[]' value='$requete2'>";
echo "</td>";
echo "</tr>";
} echo "</table>";
echo"<center><input type='submit' name='Supp' value='Valider la suppression'></center>";
echo"</form>";
}
else
{
echo "La requête ne renvoie pas de résultat !";
}
?>
[/code]
Le problème sur cette partie semble venir de l'ajout de la checkbox puis que le click sur le bouton "Valider la suppression" me renvoit $requete2 et non le résultat de $requete2
[code]
<?php
if(isset($_POST['ID']) != FALSE){
foreach($_POST['ID'] as $IDchoisie);
}
else{
echo"<p>Pas de sélection</p>"; die;
}
echo $IDchoisie;
$link = mysqli_connect("127.0.0.1","root","","h15478");
/* test de la connexion à la base de donnée */
if ($link != FALSE)
{
echo "Connexion réussie";
}
else
{
die("Impossible de se connecter : ".mysqli_error());
}
echo "</br>";
/* création de la requete */
$requete = "DELETE FROM annonces
WHERE IDannonce='$IDchoisie'";
/* test de la requete */
$result = mysqli_query($link,$requete) or die(mysqli_error($link));
?>
[/code]
Dans cette deuxième partie, je ne suis pas sur du codage de mon foreach, si vous pouviez me dire si vous la trouvez correcte j'apprécierais beaucoup.
Merci d'avance aux lecteurs et aux aides
Cordialement