8792 sujets

Développement web côté serveur, CMS

Bonjour et joyeux noel à tous !

J essaie par le biais d'une fonction, d'afficher un texte qui s'affiche seulement lorsque l'on a cliqué sur un lien.
Ce texte doit s'afficher dans la même page. (j essaie de mettre en place un système de commentaires)

Mais lorsque je me rend sur la page articles.php?do=comments&id=1, le texte de ma fonction n apparait pas

mon lien
<a href="articles.php?do=comments&amp;id=<? echo $id ?>">test</a>


La condition a ma fonction
if ($do[0] == "comments") {include('articles.php'); comments(); } 


ma fonction
function comments() {

echo "<br /><br />test commentaire";

}


Merci d'avance d'éclairer ma lanterne en ce jour de noel Smiley lol
Salut Skippy1 et joyeux noel à toi aussi Smiley cligne

Tu passe ta variable par l'url. Tu utilise donc la méthode GET :
if ($_GET['do'] == "comments") {include('articles.php'); comments(); } 

Il faudrait aussi que tu test au préalable si ta variable $_GET['do'] existe bien. Smiley murf

++
Ah oui en effet ... Smiley lol

Merci à toi!

j ai réglé le problème ainsi (je faisais un include de ma page, dans la même page ...):
if ($_GET['do'] == "comments") { comments(); }

C'était pas compliqué, mais bon je peine un peu

Par contre si cela marche bien, ma fonction ne s'affiche pas dans mon div (mon central), mais comme il est tard et que boulot, je reposterai surement plus tard Smiley murf

A+
Modifié par Skippy1 (26 Dec 2006 - 00:59)
Bonjour,
Skippy1 a écrit :
j ai réglé le problème ainsi (je faisais un include de ma page, dans la même page ...):
if ($_GET['do'] == "comments") { comments(); }
Comme l'a dit joeyinbox, il est préférable de tester auparavant que le paramètre "do" existe bien :
if (array_key_exists('do', $_GET) && $_GET['do'] == "comments") { ...
Ok ok, j avais pas compris, vu que ça marche comme ça

En fait la variable $do est passée en url, via un lien qui se trouve sur ma page.

Alors je ne comprend pas bien pourquoi je dois tester si do existe bien ? Par mesure de sécurité ?

En tout cas merci pour votre aide Smiley cligne
Skippy1 a écrit :
Alors je ne comprend pas bien pourquoi je dois tester si do existe bien ? Par mesure de sécurité ?

Simplement pour éviter un message d'erreur au cas où tu ne déclare pas ta variable do.

Bonne fêtes de fin d'année Smiley langue
++
Ah ben voilà tout simplement pourquoi. Smiley smile

Par contre j ai un autre problème en m'y prenant ainsi.

Le contenu de ma fonction ne s'affiche pas où je veux. Pourtant je la mais bien à la suite de mon div

En gros j ai un div contenant l'article. A la suite de mon article un lien, laisser un commentaire. J'aimerai que lorsque l'on clique sur le lien, apparaissent ma fonction à la suite de mon article. Mais là ma fonction est affichée avant mon header Smiley decu

Merci bien et joyeuse fètes à tous !