Bonjour à tous,
Voila, pour l'affichage d'un bbcode, j'enregistre mes message dans la base de donnée avec leurs balises.
Je veux donc, avant de les afficher, récupérer les valeurs d'origine pour les passer dans ma méthode javascript afin de les rendre lisibles.
Pour info, j'ai pris les méthodes
sur ce tuto.
Je fais (ou du moins j'essaie) de faire de cette façon :
$form .= '</td>
<td name="postMess" id="postMess">'.$datas['post_message'].'</td></tr>';
Ou bien evidemment $datas['post_message'] est le message récupérer dans ma base de donnée.
Puis, sous ces lignes :
Code : Tout sélectionner
<script language="javascript" type="text/javascript">
p=document.getElementById("postMess").value
p = code_to_html(p);
document.getElementById("postMess").innerHTML=p ;
</script>Après avoir fermé php bien sur.
Problème :
M'affiche : undefined
Et si j'essai avec
J'ai droit a : [object HTMLTableCellElement]
Est-ce que quelqu'un peut m'aider ?? Ca va faire deux jours que je seche.....après avoir tester des tonnes de méthodes différentes, de façon d'écrire différentes et autres......
Merci d'avance
Edit : Autre souci : imaginons que j'ai 5 messages à afficher. Je fais un test avec mon javascript pour lui dire de mettre 'test' dans mon td :
Code : Tout sélectionner
<script language="javascript" type="text/javascript">
p='test'
document.getElementById("postMess").innerHTML=p ;
</script>Cela fonctionne, il me met bien test dans mes td.....sauf dans la dernière, à chaque fois....quelque soit mon nombre de message, il ne me remplira jamais la dernière....une idée du pourquoi ??
Re merci d'avance
Edit : Après d'autre recherche et d'autres heures de galère, j'ai enfin trouvé la solution :
$form .= '</td>
<td name="postMess" id="postMess"></td></tr>';
//On ne met rien dans la cellule ou le message doit s'afficher
$form .='<input type="hidden" id="recup" value="'.htmlspecialchars($datas['post_message']).'" />';
//On met le message à récupérer dans un input hidden
Pour que tous les messages s'affichent convenablement :
echo $form;
//Ici, après le echo(!!!) le petit script ci-dessous
Script pour récupérer le message et l'afficher dans notre td :
Code : Tout sélectionner
p=document.getElementById("recup").value
//On récupère la valeur de "recup", donc de notre input
p = code_to_html(p);
//On applique la fonction au message
document.getElementById("postMess").innerHTML=p ;
//On met le résultat dans postMess, donc notre td