8797 sujets

Développement web côté serveur, CMS

Bonsoir
J'ai, en bas de page, une div dans laquelle s'affichent concécutivement des images grâce à php. C'est ce qu'on appelle, je crois, une "pseudo-frame".
Le problème est qu'étant situé en bas de page le clic sur un lien fait apparaitre l'image au bon endroit mais suite au rechargement de la page : je suis de nouveau en haut de page et il faut scroller pour aller voir ce qui vient de s'afficher. J'ai un souci avec le menu qui fait fonctionner ce petit système.

<!-- ex 1 -->
<ul>
    <li><a href="page.php?inc=photo">Voir la photo</a></li>
    <li><a href="page.php?inc=plan">Voir le plan</a></li>
</ul>

<!-- ex 2 -->
<ul id="ici">
    <li><a href="page.php#ici?inc=photo">Voir la photo</a></li>
    <li><a href="page.php#ici?inc=plan">Voir le plan</a></li>
</ul>

(exemple 1) Ceci fonctionne à merveille mais a le défaut de me re-afficher le haut de page.
(exemple 2) J'ai essayé de rajouter dans le lien une précision provoquant l'affichage ou je veux mais sans succès, le php ne fonctionne plus du tout.


Ce n'est peut-être tout simplement pas possible mais, si quelqu'un parmi vous connait une astuce, soit HTML, soit PHP ?
Modifié par Aureance (09 Nov 2007 - 02:03)
Bonjour,

l'ancre d'une url doit toujours se mettre à la fin. Dans ton cas, ça devras donner quelque chose comme ça:

<ul id="ici">

    <li><a href="page.php#photo"></a>Voir la photo</li>

    <li><a href="page.php#plan"></a>Voir le plan</li>

</ul>

Modifié par Francois44 (08 Nov 2007 - 20:56)
Bonsoir et merci
Je suis d'accord avec toi mais mon PHP (qui s'indique APRES le lien html) est purement éliminé dans ton exemple.
<ul id="ici">
    <li><a href="page.php?inc=photo#ici">Voir la photo</a></li>
    <li><a href="page.php?inc=plan#ici">Voir le plan</a></li>
</ul>

Ceci ne fonctionne pas du tout non plus, j'avais déjà essayé.
Modifié par Aureance (08 Nov 2007 - 22:24)
Bonsoir,

le lien doit englober le texte, dans tes extraits de code il ne contient rien.
Sinon le "#ici" doit bien être placé tout à la fin de l'url, après les éventuelles variables.
Oui, merci Necromantik.
J'ai corrigé les deux posts qui étaient mal écrit. Pas de correction sur mon vrai code (chez moi). La partie qui m'intérresse est href="page.php#ici?inc=photo" qui ne fonctionne pas, le "#ici", pointant vers la liste, désactive l'ensemble "?variable=valeur" du PHP qui suit.

Je rappelle que j'aimerai rester en bas de page à l'affichage de la nouvelle image.
Il ya peut-être une autre "combine" ?

Sinon, le mettre après les variables (comme dans l'exemple 3) ne fonctionne pas photo#ici n'étant pas une variable prévue dans mon code et #ici doit faire partie de l'url.. avant les indications PHP.
Avec cette méthode les adresses changent bien dans la barre d'adresse, la page reste fixe comme je le voudrais mais pas les images ne changent pas !
Modifié par Aureance (08 Nov 2007 - 22:42)
Modérateur
Comme l'avait souligné Necromantik, tu dois mettre le #ici à la toute fin de l'url, après les variables, donc:


href="page.php?inc=photo#ici"

Modifié par Tony Monast (08 Nov 2007 - 22:38)
@ Tony Monast
Je corrigeais pendant que tu postais.
L'image ne change plus (ou plutôt ne change qu'au premier clic)
Le problème ne vient tout de même pas de mon switch ?

<?php
switch($_GET["inc"])
{
    case "photo":
    $inc = '<img src="'.$images_path.'plan.jpg" alt="mobil-homes Savana" />';
    break;
    
    case "plan":
    $inc = '<img src="'.$images_path.'photo.jpg" alt="mobil-homes Savana" />';
    break;

    default:
    $inc = '<img src="'.$images_path.'photo.jpg" alt="mobil-homes Savana" />';
    break;
}
?>

Sur un autre forum on confirme ce que vous dites: l'ancre s'indique après les variables mais chez moi, avec cette méthode les images ne changent plus, seulement une fois puis plus jamais ?
Modifié par Aureance (08 Nov 2007 - 23:01)
Résolu ! merci à tous.

En fait c'est avec ma version de FireFox 2.0.0.1 que ça ne marchait pas, tout se passe correctement avec les autres navigateurs (pour Mac)
Je viens de faire une mise à jour de FF vers la version 2.0.0.2 et maintenant tout baigne !

Pour les Explorer PC je ne sais pas, mais avec l'ancestral Explorer 5.2 pour Mac ça fonctionne bien.
Donc je résume l'aide qu'on m'a apporté ; on indique l'ancre pointant à intérieur d'une page après les variables php.
Ceux qui sont interressés peuvent voir une page test avec le code source ICI.