Espace commentaire.
Résolu
Legrandfifou
Messages postés
109
Date d'inscription
Statut
Membre
Dernière intervention
-
Legrandfifou Messages postés 109 Date d'inscription Statut Membre Dernière intervention -
Legrandfifou Messages postés 109 Date d'inscription Statut Membre Dernière intervention -
Bonjour, je suis actuellement entrain de créer un espace commentaire en dessous de chaque post que je crée. Cependant tout les posts s'affiche l'un en dessous de l'autre et donc j'ai créer une boucle while() regroupant tout les articles de ma BDD.
Mais si l'utilisateur clique sur le bouton d'envoi comme c'est le même bouton pour chaque post j'ai décider d'ajouter le
Mais ca ne fonctionne pas et je pense savoir pourquoi puisque le $id_affichage pourrait être nimporte le quel j'aimerais donc qu'il prenne en compte tout les $id_affichage et qu'il regarde le quel est le bon :) Je n'ai pas trouver comment faire c'est pour cela que je viens à vous :) Merci à ceux qui m'aideront ^^
while($donnees_post_affichage = $req_post_affichage->fetch()) { $pseudo_affichage = $donnees_post_affichage['pseudo']; $title_affichage = $donnees_post_affichage['title']; $message_affichage = $donnees_post_affichage['message']; $id_affichage = $donnees_post_affichage['id']; echo "<div class='post_affichage'> <div class='title_affichage'>".$id_affichage.". ".$title_affichage."</div> <div class='pseudo_affichage'> by ".$pseudo_affichage."</div> <div class='message_affichage'>".$message_affichage."</div> <div class='commentaire'> <FROM action='' method='POST'> <img src='membres/avatar/".$profile_picture."' class='commentaire_image_case'/> <textarea name='commentaire_case_$id_affichage' class='commentaire_case' placeholder='Ecrire un commentaire...'></textarea> <input type='submit' name='commentaire_envoi_$id_affichage' class='commentaire_envoi'> </from> </div> </div> "; }
Mais si l'utilisateur clique sur le bouton d'envoi comme c'est le même bouton pour chaque post j'ai décider d'ajouter le
$id_affichagecomme ceci
name='commentaire_envoi_$id_affichage'pour que chaque bouton d'envoie soit différent des autres.. Malheureusement lorsque je passe a la vérification du 'cliquage' du bouton je bloque car j'ai procéder comme cela
if($pseudo) { if (isset($_POST["commentaire_envoi_$id_affichage"])) { echo 'coucou'; } }
Mais ca ne fonctionne pas et je pense savoir pourquoi puisque le $id_affichage pourrait être nimporte le quel j'aimerais donc qu'il prenne en compte tout les $id_affichage et qu'il regarde le quel est le bon :) Je n'ai pas trouver comment faire c'est pour cela que je viens à vous :) Merci à ceux qui m'aideront ^^
A voir également:
- Espace commentaire html
- Espace insécable - Guide
- Espace de stockage gmail plein - Guide
- Commentaire word - Guide
- Espace stockage google - Guide
- Espace html - Astuces et Solutions
2 réponses
Après de multiple essai et des recherches et de concentration surtout :p J'ai réussi ! Voici le code :)
RESOLU !! :)
<?php $sql_print_post = 'SELECT * FROM post ORDER BY id DESC'; $params = array(":pseudo" => $pseudo, ":title" => $title, ":message" => $message); try { $req_post_affichage = $bdd->prepare($sql_print_post); $req_post_affichage->execute($params); } catch(Exception $e) { echo "<br>ERREUR ! ".$e->getMessage()."<br>"; echo "<br>params : <br>"; } ?><script type="text/javascript"> <!-- function maxlength_textarea(id, crid, max) { var txtarea = document.getElementById(id); document.getElementById(crid).innerHTML=max-txtarea.value.length; txtarea.onkeypress=function(){eval('v_maxlength("'+id+'","'+crid+'",'+max+');')}; txtarea.onblur=function(){eval('v_maxlength("'+id+'","'+crid+'",'+max+');')}; txtarea.onkeyup=function(){eval('v_maxlength("'+id+'","'+crid+'",'+max+');')}; txtarea.onkeydown=function(){eval('v_maxlength("'+id+'","'+crid+'",'+max+');')}; } function v_maxlength(id, crid, max) { var txtarea = document.getElementById(id); var crreste = document.getElementById(crid); var len = txtarea.value.length; if(len>max) { txtarea.value=txtarea.value.substr(0,max); } len = txtarea.value.length; crreste.innerHTML=max-len; } --> </script> <?php while($donnees_post_affichage = $req_post_affichage->fetch()) { $pseudo_affichage = $donnees_post_affichage['pseudo']; $title_affichage = $donnees_post_affichage['title']; $message_affichage = $donnees_post_affichage['message']; $id_affichage = $donnees_post_affichage['id']; $commentaire = htmlspecialchars($_POST['commentaire_case']); $identification_post = htmlspecialchars($_POST['identification_post']) ; echo "<div class='post_affichage'> <div class='title_affichage'>".$id_affichage.". ".$title_affichage."</div> <div class='pseudo_affichage'> by ".$pseudo_affichage."</div> <div class='message_affichage'>".$message_affichage."</div> <div class='commentaire'> <form action='' method='POST' name='formulaire'> <img src='membres/avatar/".$profile_picture."' class='commentaire_image_case' /> <textarea id='textarea_1' cols='35' rows='4' name='commentaire_case' class='commentaire_case' placeholder='Ecrire un commentaire...'></textarea> <div class='caracteres_limit'>Il vous reste <span id='carac_reste_textarea_1'></span> caractères.</div> <br /> <br /> <button type='submit' name='commentaire_envoi' class='commentaire_envoi'>Envoyer</button> <input type='hidden' name='identification_post' value='".$id_affichage."' /> </form> <br /> <br /> <div class='affichage_commentaire'> "; ?><script type="text/javascript"> <!-- maxlength_textarea('textarea_1','carac_reste_textarea_1', 300); --> </script><?php $sel = 'SELECT * FROM commentaire WHERE id_post = :id_post ORDER BY id DESC'; $params_coms = array(":id_post"=>$id_affichage); try { $req_coms = $bdd->prepare($sel); $req_coms->execute($params_coms); } catch(Exception $e) { // en cas d'erreur echo "<br>ERREUR ! ".$e->getMessage()."<br>"; echo "<br>params : <br>"; print_r($params_coms); print_r($params_psd); } $sel_psd = 'SELECT image FROM membres WHERE pseudo = :pseudo'; $params_psd = array(":pseudo"=>$pseudo); try { $req_psd = $bdd->prepare($sel_psd); $req_psd->execute($params_psd); $donnes_psd = $req_psd->fetch(); } catch(Exception $e) { // en cas d'erreur echo "<br>ERREUR ! ".$e->getMessage()."<br>"; echo "<br>params : <br>"; print_r($params_psd); } $image = $donnes_psd['image']; while($donnees_coms_affichage = $req_coms->fetch()) { $pseudo_com = $donnees_coms_affichage['pseudo']; $affichage_com = $donnees_coms_affichage['commentaires']; $profile_com = $donnees_coms_affichage['image']; echo " <img src='membres/avatar/".$profile_com."'> <div class='affichage_commentaire_com'>".$affichage_com."</div> <br /> "; } echo " </div> </div> </div>"; } if (isset($_POST["commentaire_envoi"])) { if(!empty($_POST['commentaire_case'])) { $envoi = $bdd->prepare("INSERT INTO commentaire(pseudo,commentaires,id_post,image) VALUES (?,?,?,?)"); $envoi->execute(array($pseudo,$commentaire,$identification_post,$image)); header("Refresh:0"); } } ?>
RESOLU !! :)