[PHP] concaténation dans une boucle
Fermé
Ourse
Messages postés
7
Date d'inscription
samedi 14 juillet 2007
Statut
Membre
Dernière intervention
22 juillet 2007
-
14 juil. 2007 à 19:34
Ourse Messages postés 7 Date d'inscription samedi 14 juillet 2007 Statut Membre Dernière intervention 22 juillet 2007 - 22 juil. 2007 à 22:19
Ourse Messages postés 7 Date d'inscription samedi 14 juillet 2007 Statut Membre Dernière intervention 22 juillet 2007 - 22 juil. 2007 à 22:19
A voir également:
- [PHP] concaténation dans une boucle
- Easy php - Télécharger - Divers Web & Internet
- Xiaomi s'éteint tout seul et se rallume en boucle - Forum Xiaomi
- Mon pc s'allume et s'éteint en boucle ✓ - Forum Matériel & Système
- Huawei s'allume et s'éteint en boucle - Forum Huawei
2 réponses
Posotaz
Messages postés
489
Date d'inscription
samedi 23 juin 2007
Statut
Membre
Dernière intervention
19 juin 2011
225
14 juil. 2007 à 20:10
14 juil. 2007 à 20:10
Bonsoir Ourse,
Ca dépend aussi du code JavaScript, c'est peut-être lui qui est en tort.
Le onmouseover et le onmouseout sont bien mis à l'intérieur du "<a>", avant ou après le "href" ?
$page .= "<li><a href=\"$link\" onmouseover=\"cache('map');montre('text')\" onmouseout=\"cache('text');montre('map')\">$title</a>";
Donc il faut bien que ton HTML contienne deux balises identifiées "text" et "map" et que je JavaScript (par un document.getElementById("lenomdelabalise")) utilise la propriété visibility, mise à "visible" dans un cas et "hidden" dans l'autre.
Quoiqu'il en soit c'est le résultat final en HTML qui compte. Donc compare le code retourné par le script avec tes attentes. Et au fait je ne suis pas certain que "onmouseout" et "onmouseover" prennent des majuscules mais dans ce cas précis ça ne devrait pas avoir d'incidence.
Ca dépend aussi du code JavaScript, c'est peut-être lui qui est en tort.
Le onmouseover et le onmouseout sont bien mis à l'intérieur du "<a>", avant ou après le "href" ?
$page .= "<li><a href=\"$link\" onmouseover=\"cache('map');montre('text')\" onmouseout=\"cache('text');montre('map')\">$title</a>";
Donc il faut bien que ton HTML contienne deux balises identifiées "text" et "map" et que je JavaScript (par un document.getElementById("lenomdelabalise")) utilise la propriété visibility, mise à "visible" dans un cas et "hidden" dans l'autre.
Quoiqu'il en soit c'est le résultat final en HTML qui compte. Donc compare le code retourné par le script avec tes attentes. Et au fait je ne suis pas certain que "onmouseout" et "onmouseover" prennent des majuscules mais dans ce cas précis ça ne devrait pas avoir d'incidence.
Gihef
Messages postés
5150
Date d'inscription
mercredi 20 juillet 2005
Statut
Contributeur
Dernière intervention
20 février 2023
2 778
15 juil. 2007 à 19:26
15 juil. 2007 à 19:26
Bonjour,
Tu te simplifierais peut-être la vie en utilisant des CSS ?
Le style s'appliquant aux <a> munis de la “class="liens_liste"”, seuls ceux de la liste seront concernés.
Par exemple :
et
Tu te simplifierais peut-être la vie en utilisant des CSS ?
Le style s'appliquant aux <a> munis de la “class="liens_liste"”, seuls ceux de la liste seront concernés.
Par exemple :
a.liens_liste { color : #fff; text-decoration : underline overline; } a.liens_liste:hover { color : #000; text-decoration : none; }etc. (avec des images c'est aussi possible).
et
$page .= "<li><a class="liens_liste" href=\"$link\">$title</a>";
Ourse
Messages postés
7
Date d'inscription
samedi 14 juillet 2007
Statut
Membre
Dernière intervention
22 juillet 2007
16 juil. 2007 à 17:25
16 juil. 2007 à 17:25
Merci Gihef, mais ma question porte sur du contenu dynamique, pas sur du style.
D'ailleurs, j'utilise bien les CSS, très pratiques, tu as raison.
Et mes feuilles de styles sont valides W3C ;-) Mon code XHTML 1.1 aussi ;-))
D'ailleurs, j'utilise bien les CSS, très pratiques, tu as raison.
Et mes feuilles de styles sont valides W3C ;-) Mon code XHTML 1.1 aussi ;-))
Reivax962
Messages postés
3672
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
11 février 2021
1 011
16 juil. 2007 à 17:38
16 juil. 2007 à 17:38
Bonsoir,
Tu pourrais nous montrer ce que donne ton code php ?
Et un bout du code html généré ?
Merci,
Xavier
Tu pourrais nous montrer ce que donne ton code php ?
Et un bout du code html généré ?
Merci,
Xavier
Ourse
Messages postés
7
Date d'inscription
samedi 14 juillet 2007
Statut
Membre
Dernière intervention
22 juillet 2007
>
Reivax962
Messages postés
3672
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
11 février 2021
16 juil. 2007 à 22:45
16 juil. 2007 à 22:45
Bonsoir Xavier,
Voici la portion de code PHP concernée. Elle est dans une <div> :
Le html retourné est une liste. En voici un extrait :
Je voudrais insérer dans le code PHP un instruction de rollover pour permettre d'afficher au 1er plan, dans un bloc voisin qui contient une image (z-index:0), un autre bloc (z-index=1)avec des informations complémentaires sur l'article dont on survole le titre ; cela permettrait à l'utilisateur de savoir si l'article l'intéresse vraiment avant qu'il ne clique.
Côté code javascript, c'est du tout classique et cela fonctionne très bien sur un lien simple (hors de la liste produite par php )
Donc, je voudrais insérer, dans le code de chaque ligne de la liste, donc dans le code PHP qui fabrique cette liste :
map et text sont respectivement les id des zones image et texte qui doivent alterner.
Merci par avance.
Voici la portion de code PHP concernée. Elle est dans une <div> :
$page .="<ul>\n"; foreach($recents as $article) { $type = $article["type"]; if($type == 0) continue; $title = $article["title"]; $link = $article["link"]; $page .= "<li><a href=\"$link\">$title</a></li>\n"; } $page .="</ul>\n"; return $page; }
Le html retourné est une liste. En voici un extrait :
<ul> <li><a href="https://xxxvideoporn.xxx/">Article 1</a></li> <li><a href="http://www.yyy/">Article 2</a></li> [ETC] </ul>
Je voudrais insérer dans le code PHP un instruction de rollover pour permettre d'afficher au 1er plan, dans un bloc voisin qui contient une image (z-index:0), un autre bloc (z-index=1)avec des informations complémentaires sur l'article dont on survole le titre ; cela permettrait à l'utilisateur de savoir si l'article l'intéresse vraiment avant qu'il ne clique.
Côté code javascript, c'est du tout classique et cela fonctionne très bien sur un lien simple (hors de la liste produite par php )
<script language="javascript"> function montre(id) { if (document.getElementById) { document.getElementById(id).style.visibility="visible"; } else if (document.all) { document.all[id].style.visibility="visible"; } else if (document.layers) { document.layers[id].visibility="visible"; } } function cache(id) { if (document.getElementById) { document.getElementById(id).style.visibility="hidden"; } else if (document.all) { document.all[id].style.visibility="hidden"; } else if (document.layers) { document.layers[id].visibility="hidden"; } } </script>
Donc, je voudrais insérer, dans le code de chaque ligne de la liste, donc dans le code PHP qui fabrique cette liste :
onMouseOut="cache('map');montre('text')" onMouseOut="cache('text');montre('map')"
map et text sont respectivement les id des zones image et texte qui doivent alterner.
Merci par avance.
Reivax962
Messages postés
3672
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
11 février 2021
1 011
>
Ourse
Messages postés
7
Date d'inscription
samedi 14 juillet 2007
Statut
Membre
Dernière intervention
22 juillet 2007
17 juil. 2007 à 09:36
17 juil. 2007 à 09:36
Bonjour,
En fait c'est surtout le code qui ne marche pas qui m'intéresse ;)
Xavier
En fait c'est surtout le code qui ne marche pas qui m'intéresse ;)
Xavier
Alain42
>
Ourse
Messages postés
7
Date d'inscription
samedi 14 juillet 2007
Statut
Membre
Dernière intervention
22 juillet 2007
17 juil. 2007 à 15:13
17 juil. 2007 à 15:13
Est ce qu'une infoBull t'irrai:
Mettre des informations a l'aide d'une bulle lorsque vous passez votre souris sur un lien
Bien souvent vous souhaitez informer l'internaute sur le lien d'une page. Cette information consiste a expliquer par un court texte le contenu de la page avant de cliquer sur le lien:
* <a href="url de votre lien" target="_blank" title="texte souhaité pour expliquer le lien"></a>
* Exemple avec ce lien (Placez juste votre souris sur le lien sans cliquer et attendez que l'infobulle s'affiche ):
* Trucs et Astuces Astwinds
Voici la balise pour obtenir ce résultat:
<a href="https://1map.com/fr/astwindscom" target="_blank" title="Tous les trucs et Astuces pour Windows Xp et la conception de votre site sur https://1map.com/fr/astwindscom">Trucs
et Astuces Astwinds</a>
<a href= ouvre la balise du lien
"url de votre lien" lien de la page vers laquelle pointe votre lien. Dans ce cas le lien pointe sur la page d'accueil d'Astwinds
target="_blank" votre page s'ouvrira dans une autre fenêtre
title="Tous les trucs et Astuces pour Windows Xp et la conception de votre site sur https://1map.com/fr/astwindscom"> Texte que vous souhaitez afficher lorsque l'internaute passe la souris sur le lien sans cliquer
Le texte en bleu est le texte visible du lien sur votre page
</a> ferme la balise du lien
Mettre des informations a l'aide d'une bulle lorsque vous passez votre souris sur un lien
Bien souvent vous souhaitez informer l'internaute sur le lien d'une page. Cette information consiste a expliquer par un court texte le contenu de la page avant de cliquer sur le lien:
* <a href="url de votre lien" target="_blank" title="texte souhaité pour expliquer le lien"></a>
* Exemple avec ce lien (Placez juste votre souris sur le lien sans cliquer et attendez que l'infobulle s'affiche ):
* Trucs et Astuces Astwinds
Voici la balise pour obtenir ce résultat:
<a href="https://1map.com/fr/astwindscom" target="_blank" title="Tous les trucs et Astuces pour Windows Xp et la conception de votre site sur https://1map.com/fr/astwindscom">Trucs
et Astuces Astwinds</a>
<a href= ouvre la balise du lien
"url de votre lien" lien de la page vers laquelle pointe votre lien. Dans ce cas le lien pointe sur la page d'accueil d'Astwinds
target="_blank" votre page s'ouvrira dans une autre fenêtre
title="Tous les trucs et Astuces pour Windows Xp et la conception de votre site sur https://1map.com/fr/astwindscom"> Texte que vous souhaitez afficher lorsque l'internaute passe la souris sur le lien sans cliquer
Le texte en bleu est le texte visible du lien sur votre page
</a> ferme la balise du lien
14 juil. 2007 à 22:11
Oui, j'ai bien isolé la source du problème.
Le javascript fonctionne très bien et les div text et map existent :
la portion que j'essaie d'insérer dans le php, je l'ai d'abord testée sur un autre lien de la même page, mais codée "en dur". Elle donne exactement le comportement attendu.
Je viens d'essayer avec la ligne que tu proposes. Cela donne le même résultat étonnant que j'avais moi avant de poser la question ici :
la portion [onmouseover=\"cache('map');montre('text')\" onmouseout=\"cache('text');montre('map')\"] semble ignorée. La liste de liens s'écrit dans le navigateur client comme si elle n'existait pas !
J'ai bien vérifié sur le serveur que le code php avait été uploadé dans sa version corrigée.
C'est un vrai mystère ! Je ne comprends pas.