Merci d'avoir pris le temps de regarder mon problème. Je m'excuse pour mon ignorance, je ne savais même pas que javascript et java étaient deux choses différentes.
Ta réponse m'a permis de comprendre comment je pouvais voir ce que fait mon code php: j'affiche le code source de la page générée et je le compare à ce que j'ai écrit.
Par contre, pour l'introduction de mon petit code javascript que j'ai copié sur un forum - c'est trop compliqué pour moi, je crois qu'il vaut mieux que j'abandonne. Je chercherai une autre solution. J'ai testé toute la journée de différentes manières, la dernière,
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| <?php
$sql='SELECT * FROM editos ORDER BY ID';
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
$mois=$data['mois'];
$annee=$data['annee'];
$titre=$data['titre'];
$texte=$data['texte'];
while ($data = mysql_fetch_array($req)) {
$ID=$data['ID'];
echo'<div onclick="javascript:swap_couche(\''; echo $ID; echo '\')">Lire ...<img name=\'triangle\' src=\'images/triangle.jpg\' border="0" alt="Déplier/Replier" />';
echo '</div><script language=\'JavaScript\' type="text/javascript">';
echo '<!-- ' ;
echo 'vis[\''; echo $ID; echo '\'] = \'hide\'; ';
echo ' //--> </script>' ;
echo '<div id=\'Layer'; echo $ID; echo '\' onclick="javascript:swap_couche(\''; echo $ID; echo '\')" style="display:none">';
echo $texte;
echo '</div>';
}
mysql_free_result ($req);
?> |
me donne un résultat presque parfait - presque.
Il ressemble en tout point au code source que j'obtiens pour une requête sans boucle.
Je rappelle que le javascript fonctionne très bien pour une requête sans boucle.
D'abord je copie le code source de la page générée, d'abord la partie où je fais une requête sans boucle et qui marche.
1 2 3 4 5 6 7
| <div onclick="javascript:swap_couche('fest')">Autres Festivals <img name='triangle' src='images/triangle.jpg' border="0" alt="Déplier/Replier" /></div><script language='JavaScript' type="text/javascript">
<!--
vis['fest'] = 'hide';
//-->
</script><div id='Layerfest' onclick="javascript:swap_couche('fest')" style="display:none">
<ul class="d">(... résultat de la requête...)</ul>
</div> |
puis le premier résultat de ma boucle
<div onclick="javascript:swap_couche('4')">Lire ...<img name='triangle' src='images/triangle.jpg' border="0" alt="Déplier/Replier" /></div><script language='JavaScript' type="text/javascript"><!-- <br />vis['4'] = 'hide'; <br /> //--> </script><div id='Layer4' onclick="javascript:swap_couche('4')" style="display:none"></div>
La seule différence que je vois entre les deux, c'est que le bout de code
1 2 3
| <!--
vis['fest'] = 'hide';
//--> |
ne se met pas sur trois lignes dans le 2e cas. J'ai essayé d'inclure des sauts de ligne, rien n'y fait.
Il va sans doute que j'apprenne vraiment javascript, mais ça sera plus tard, pour l'instant je me prends assez la tête avec php.
Enfin, si quelqu'un peut voir où est le problème dans mon code, je serais quand même très contente... Merci en tout cas.
Partager