IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 PHP Discussion :

Appeler une page twig avec une ancre incluse dedans pour affichage HTML dans navigateur [3.x]


Sujet :

PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre extrêmement actif Avatar de Mister Nono
    Homme Profil pro
    Ingénieur Mathématiques et Informatique
    Inscrit en
    Septembre 2002
    Messages
    2 242
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur Mathématiques et Informatique
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2002
    Messages : 2 242
    Par défaut Appeler une page twig avec une ancre incluse dedans pour affichage HTML dans navigateur
    Bonjour,

    J'ai un contrôleur qui appelle une page twig :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    return $this->render('AppBundle:Default:index.html.twig', array(blabla...));
    La page est bien exécutée et la page HTML affichée dans le navigateur.

    Je veux juste que l'affichage dans la page HTML se positionne sur un élément qui possède un id servant d'ancre de positionnement lors de l'affichage de la page HTML, comme cela par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <div id="ancre_de_positionnement">
    blabla...
    </div>
    Pour rappel, une ancre est indiquée comme cela dans l'URL :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    http://nom_du_site/nom_de_la_page#ancre_de_positionnement
    Comment réaliser cela ?

    Merci d'avance.

    A+

  2. #2
    Membre chevronné
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2008
    Messages
    252
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2008
    Messages : 252
    Par défaut
    Je ne pense pas que ce soit faisable depuis le controller.
    Il faut soit le faire en générant le lien, soit en javascript pour rediriger par défaut sur cette ancre si il y'en à aucun.

  3. #3
    Membre extrêmement actif Avatar de Mister Nono
    Homme Profil pro
    Ingénieur Mathématiques et Informatique
    Inscrit en
    Septembre 2002
    Messages
    2 242
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur Mathématiques et Informatique
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2002
    Messages : 2 242
    Par défaut
    Citation Envoyé par numew Voir le message
    ...
    Il faut soit le faire en générant le lien, ...
    Et avec Symfony, comment générer le lien avec l'ancre ?

    Merci.

    A+

  4. #4
    Membre chevronné
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2008
    Messages
    252
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2008
    Messages : 252
    Par défaut
    Simplement en ajoutant l'ancre à la fin du lien.
    Dans twig :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <a href="{{path('app_controller_index')}}#ancre">Mon lien avec ancre</a>
    Dans un controller avec le parametre "_fragment"
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $url = $this->generateUrl('app_controller_index', array('_fragment' => 'ancre'));

  5. #5
    Membre extrêmement actif Avatar de Mister Nono
    Homme Profil pro
    Ingénieur Mathématiques et Informatique
    Inscrit en
    Septembre 2002
    Messages
    2 242
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur Mathématiques et Informatique
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2002
    Messages : 2 242
    Par défaut
    Citation Envoyé par numew Voir le message
    Simplement en ajoutant l'ancre à la fin du lien.
    Dans twig :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <a href="{{path('app_controller_index')}}#ancre">Mon lien avec ancre</a>
    Effectivement, je fais comme cela dans la très grande majorité des cas.


    Dans un controller avec le parametre "_fragment"
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $url = $this->generateUrl('app_controller_index', array('_fragment' => 'ancre'));
    Pour ce cas qui me semble correspondre plus à mon soucis car je suis bien dans un controller, le problème est comment modifier mon code du contrôleur ;
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    return $this->render('AppBundle:Default:index.html.twig', array(mes paramètres pour remplir la page twig));
    ... en $url = $this->generateUrl('app_controller_index', array('_fragment' => 'ancre'));

    Merci pour ton aide.

    A+

  6. #6
    Membre chevronné
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2008
    Messages
    252
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2008
    Messages : 252
    Par défaut
    Comme je l'ai indiqué, à priori ce n'est pas possible depuis le controller de cette façon.
    Soit on à cliqué sur un lien contenant déjà l'ancre soit un lien sans ancre.

    Si tu veux ajouter un ancre par défaut il faut se tourner vers une solution javascript qui va vérifier qu’aucun n'ancre n'est précisé et dans ce cas positionner sur celui que tu souhaite.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 0
    Dernier message: 04/08/2010, 14h02
  2. Réponses: 3
    Dernier message: 16/01/2009, 04h54
  3. [FPDF] Générer une page PDF avec une image
    Par dudu134 dans le forum Bibliothèques et frameworks
    Réponses: 9
    Dernier message: 27/09/2007, 11h23
  4. connection d'une page jsp avec une base de donnée
    Par ami_in55 dans le forum Servlets/JSP
    Réponses: 3
    Dernier message: 12/01/2007, 08h12
  5. Réponses: 3
    Dernier message: 06/01/2006, 08h57

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo