Problème de boucle
Résolu
Mick
-
Mick -
Mick -
Bonjour, j'ai un problème avec mon code php. Le but est de selectionné l'id d'un post en cliquant sur un bouton EDIT. Mais vu que c'est dans une boucle récupère les deux ID et je ne sais pas comment faire pour règlé ce bug le site au cas http://eagleeyespro.ddns.net. Merci.
<?php
$qi80 = $db->prepare("SELECT * FROM publication ORDER BY id DESC");
$qi80->execute();
while($all = $qi80->fetch()){
$idpp = $all['id'];
?>
<div id="onepost">
<h2>Nouveau post par: <?php echo $all['autor']; ?></h2>
<p><?php echo $all['autor']; ?></p>
<p>
<?php echo $all['post']; ?>
</p>
<p>Like: <?php echo $all['likes']; ?></p>
<?php
if($_SESSION['perm'] == '4'){
?>
<form method="post">
<button id="button" name="edit">Edit</button>
</form><?php
?>
<?php
}
?>
</div>
<?php
}
if(isset($_POST['edit'])){
echo $idpp;
}
?>
A voir également:
- Problème de boucle
- Mise à disposition de boucle locale dédiée ✓ - Forum Freebox
- Boucle excel sans macro - Forum Excel
- Mon pc s'allume et s'éteint en boucle ✓ - Forum Matériel & Système
- Vlc lire en boucle ✓ - Forum Lecteurs et supports vidéo
- Xiaomi s'éteint tout seul et se rallume en boucle - Forum Xiaomi
4 réponses
Bonjour,
Mets un input hidden avec un name de ton cru et pour valeur l'id de la publication dans ton form.
Il ne restera plus qu'à récupérer l'id de la publication lors du submit via $_POST.
Si c'est une page admin, ce serait peut-être mieux de passer ton form en get.
Mets un input hidden avec un name de ton cru et pour valeur l'id de la publication dans ton form.
Il ne restera plus qu'à récupérer l'id de la publication lors du submit via $_POST.
Si c'est une page admin, ce serait peut-être mieux de passer ton form en get.
Bonjour,
Pour commencer, à l'avenir, merci de poster ton code correctement en précisant, dans les balises de code, le langage concerné. Cela permet d'avoir la coloration syntaxique ainsi que l'indentation.
Explications disponibles ici : https://codes-sources.commentcamarche.net/faq/11288-poster-un-extrait-de-code
Ensuite, plusieurs possibilités.
Si tu veux rester avec un form ... l'input hidden est en effet la meilleur solution
Mais si la page qui permet de faire l'édition se trouve sur un autre fichier php, dans ce cas, un simple lien suffit
Dans le premier cas, tu récupèreras la variable en POST
dans le second cas, en GET
Et vu que tu fais du PDO, je t'invite fortement à lire et à appliquer ceci dans ton code
https://forums.commentcamarche.net/forum/affich-37584941-php-pdo-gerer-les-erreurs
et faire un tour ici :
https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
Pour commencer, à l'avenir, merci de poster ton code correctement en précisant, dans les balises de code, le langage concerné. Cela permet d'avoir la coloration syntaxique ainsi que l'indentation.
Explications disponibles ici : https://codes-sources.commentcamarche.net/faq/11288-poster-un-extrait-de-code
Ensuite, plusieurs possibilités.
Si tu veux rester avec un form ... l'input hidden est en effet la meilleur solution
<form method="post"> <input type="hidden" name="id" value="<?php echo $idpp ?>"> <button id="button" name="edit">Edit</button> </form>
Mais si la page qui permet de faire l'édition se trouve sur un autre fichier php, dans ce cas, un simple lien suffit
<a href="./chemin/vers/ta/page/edit.php?id=<?php echo $idpp;?>">Editer</a>
Dans le premier cas, tu récupèreras la variable en POST
$id = !empty($_POST['id']) ? $_POST['id'] : NULL;
dans le second cas, en GET
$id = !empty($_GET['id']) ? $_GET['id'] : NULL;
Et vu que tu fais du PDO, je t'invite fortement à lire et à appliquer ceci dans ton code
https://forums.commentcamarche.net/forum/affich-37584941-php-pdo-gerer-les-erreurs
et faire un tour ici :
https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code