none
Iframes ou Frame RRS feed

  • Question

  • Bonjour à tous,

    J'ai un problème que je ne parviens pas à solutionner.

    J'ai crée une page web en ASPX qui fonctionne bien. Mon client me demande d'intégrer une autre page que j'ai mise dans un Iframe, ça marche aussi, sauf que toutes les actions provoquent le rafraissement de la page et du Iframe, hors ce dernier gère une session et ne doit pas être rafraichi, car ça redémarre la session à chaque action sur la page.

    Quelqu'un aurait-il une solution ou une alternative ?

    En vous remerciant par avance du temps que vous m'accordez.

    Cordialement


    Jbenon

    samedi 6 juillet 2013 13:02

Réponses

  • Et cette page vient d'un autre domaine ? Dans ce cas, cela pourrait être que le cookie de session correspond au domaine de la page montrée dans l'iframe n'est pas transmis et que la session est donc perdue à chaque fois.

    Je pense qu'une frame permettrait de résoudre le problème car il est possible de ne rafraichir que la frame en cours sans actualiser l'autre frame (alors que la iframe est incorporée dans une frame principale).

    Cf éventuellement target="_self" (mais cela devrait être le cas par défaut).

    Les autres solutions que je voyais seraient :
    - de faire les interactions en AJAX pour ne jamais actualiser complètement la page principale
    - et/ou récupérer dans la page principale le code HTML de la page visé pour l'intégrer directement dans la page ASPX mais dans les deux cas c'est compliqué, je pense que les "frames" seront plus simples.

    Tant que j'y suis j'ai fait une recherche et je trouve http://kiranpatils.wordpress.com/2010/04/13/session-lost-in-iframe/ qui permettrait de préserver le cookie dans l'iframe.


    Please always mark whatever response solved your issue so that the thread is properly marked as "Answered".

    • Marqué comme réponse Aurel Bera jeudi 11 juillet 2013 09:13
    dimanche 7 juillet 2013 14:53
    Modérateur

Toutes les réponses

  • Bonjour,

    Quel est le but de mettre cette page en iframe si elle crée une session à chaque appel ?

    Une iframe référence une page externe et donc à chaque fois que la page qui héberge cette iframe va être actualisée, la page référencée par cette iframe va également être récupérée à nouveau. Il y a peut-être moyen de pallier ce problème (mise en cache, ajax ?) mais le plus simple pourrait être de corriger le comportement de la page affichée dans cette iframe.

    Il faudrait un peu mieux comprendre l'objectif général pour essayer de donner une suggestion appropriée.


    Please always mark whatever response solved your issue so that the thread is properly marked as "Answered".

    samedi 6 juillet 2013 21:14
    Modérateur
  • Bonjour,

    j'ai une page de travail en ASPX, le conteneur qui est en relation avec une autre page internet qui est en flash. Plutôt que d'ouvrir 2 fenêtres de navigateurs et de les ajuster cote à cote, mon client souhaite avoir cette 2 e page dans sa page.

    Le problème c'est que ma page aspx, a des boutons images qui ont du code qui s’exécute et rafraîchit toute la page. La page dans le Iframe a sa connexion qui se rafraîchît et perd sa session encours, c'est ce qui me pose problème car les informations inscrites sont perdues. Je ne suis l'auteur de cette page.

    J'ai besoin d'un conteneur qui ne se met pas jour. Je commence a étudier le frame, mais ça me parait aussi complexe, je dois solutionner ce problème rapidement.

    cordialement


    Jbenon

    dimanche 7 juillet 2013 06:42
  • Et cette page vient d'un autre domaine ? Dans ce cas, cela pourrait être que le cookie de session correspond au domaine de la page montrée dans l'iframe n'est pas transmis et que la session est donc perdue à chaque fois.

    Je pense qu'une frame permettrait de résoudre le problème car il est possible de ne rafraichir que la frame en cours sans actualiser l'autre frame (alors que la iframe est incorporée dans une frame principale).

    Cf éventuellement target="_self" (mais cela devrait être le cas par défaut).

    Les autres solutions que je voyais seraient :
    - de faire les interactions en AJAX pour ne jamais actualiser complètement la page principale
    - et/ou récupérer dans la page principale le code HTML de la page visé pour l'intégrer directement dans la page ASPX mais dans les deux cas c'est compliqué, je pense que les "frames" seront plus simples.

    Tant que j'y suis j'ai fait une recherche et je trouve http://kiranpatils.wordpress.com/2010/04/13/session-lost-in-iframe/ qui permettrait de préserver le cookie dans l'iframe.


    Please always mark whatever response solved your issue so that the thread is properly marked as "Answered".

    • Marqué comme réponse Aurel Bera jeudi 11 juillet 2013 09:13
    dimanche 7 juillet 2013 14:53
    Modérateur
  • Bonsoir et merci pour cette recherche.

    Il est vrai que je n'ai pas eu de réflexion sur le cookie. J'ai pris le Iframe sans voir plus loin. Je ne maîtrise pas l'outil Frame, il faut déclarer différents éléments  html avant ?

    Mais si on peut déclarer un événement pour un frame, il est possible de soumettre une variable booléen au chargement du frame afin d'éviter des nouveaux chargements, ou peut être utiliser un bouton qui crée l'action. Ainsi l'action n'est plus dans le load. Auriez-vous un modèle de chargement pour un frame ? Je vais analyser toutes les informations sur le P3P pour essayer dans tirer profit.

    Je vous tiens au courant en cas de réussite.

    En vous remerciant de votre intervention.

    Cordialement.


    Jbenon

    dimanche 7 juillet 2013 19:10
  • Bonjour à tous,

    j'ai commencé d'analyser les différentes pages, mais aussi d'autres choses à terminer. Je vois tout ça dans la semaine.

    En vous remerciant tous.

    Cordialement


    Jbenon

    mardi 9 juillet 2013 08:59
  • Donc à priori P3P devrait fonctionner.

    Si vous y êtes vraiment obligé, le principe des frames est qu'elles sont au même niveau (plutôt que d'avoir une fenêtre "principale" et une iframe "enfant") et donc elles peuvent par nature être gérées (et notamment actualisées) indépendamment les unes des autres (avec un target="_self" et c'est peut-être de toute façon le comportement par défaut si ma mémoire est exacte). Après ce serait sans doute en attendant de pouvoir résoudre le problème avec une meilleure solution.

    Eventuellement voir un petit exemple ici : http://en.wikipedia.org/wiki/Framing_(World_Wide_Web)


    Please always mark whatever response solved your issue so that the thread is properly marked as "Answered".

    mardi 9 juillet 2013 09:20
    Modérateur
  • Bonjour,

    Pouvons-nous considérer que vous avez résolu votre problème avec les scénarios proposés ? Dans l'affirmative, pourriez-vous partager avec nous la solution, afin que d'autres personnes avec le même problème puissent profiter de cette solution ?

    Désormais, nous marquons les solutions proposées. N'hésitez pas à revenir et supprimer la réponse marquée si la solution n’est pas correcte. Merci !

    Cordialement,


    Aurel BERA, Microsoft
    Microsoft propose ce service gratuitement, dans le but d'aider les utilisateurs et d'élargir les connaissances générales liées aux produits et technologies Microsoft. Ce contenu est fourni "tel quel" et il n'implique aucune responsabilité de la part de Microsoft.

    jeudi 11 juillet 2013 09:13