Le 25 mars 2016 à 09:47:13 RockStarGame6 a écrit :
while ($actucom=$comactu->fetch())
{
$auteur=$bdd->prepare('SELECT ImgPhoto, Admin, ID
FROM compte
WHERE Surnom = :Surnom');
Premier truc, l'intérêt d'utiliser des requêtes préparés est la réutilisation, on perd en performance si on l'initialise à chaque boucle. Place ton prepare avant le while. Ensuite dans le while tu bind tes values et tu execute; Aussi, tu pourrais t'éviter de placer des while dans des while si tu allais tout chercher dans une même requête avec des jointures SQL.
$auteur->bindValue(':Surnom',$actucom['Auteur'],PDO::PARAM_INT);
$auteur->execute();
while($auteur1=$auteur->fetch())
{
echo'<ul>
<li class="NomExpediteur">';
if(empty($auteur1['ImgPhoto']))
{
echo'<p><img src="Img/Membre/anonyme.png" width="50px; height="50px"/></a></p>';
}
else
{
$imgphoto=$auteur1['ImgPhoto'];
$imgnum = array('imgphoto'=>$imgphoto);
$sqlavatar = 'SELECT * FROM photo WHERE NumPhoto = :imgphoto';
$sqlavatar2 = $bdd->prepare($sqlavatar);
Même chose ici, ta requête $sqlavatar et son prepare devrait se trouver avant le tout premier while.
---
Pour le reste, comme le dit VDD, tu prend jQuery ou js et tu saisis le message et le copie dans ton modal. Mais tu dois faire suivre une référence à ton message comme son ID auto de ta bdd, par exemple dans ton lien pour modifier.
Bref, ton lien pour modifier écrit le message dans le modal et ajoute le id du message dans un champ hidden de ton form.
ensuite lors du submit, tu envoie le contenu du message avec son numéro d'ID au serveur par ajax... (PAS la même page en GET... tu appelle un fichier .php dont l'unique but est de sauvegarder le message et son contenu)
utiliser ajax te permettra de rester sur la même page, le reste se fera en arrière plan. Une fois la réponse ajax obtenue, tu réécris le message modifié dans la page avec js, puis tu ferme le modal.
Message édité le 25 mars 2016 à 16:06:19 par Pseudo supprimé