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

AJAX Discussion :

[AJAX] Se loguer sur un site externe via une iframe


Sujet :

AJAX

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    581
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 581
    Par défaut [AJAX] Se loguer sur un site externe via une iframe
    Bonjour,

    Sur ma page "Page1", j'affiche à travers une iframe le contenu d'une page "Page2" d'un site externe. Cette page "Page2" n'est accessible qu'après authentification via un formulaire sur le site externe.

    J'arrive donc à m'authentifier en ajoutant dans ma page "Page1" un formulaire contenant l'identifiant et le mot de passe, que j'exécute dans la cible iframe via le javascript en fin de page.
    Je patiente 15 sec pour être sûr que je sois logué, et j'accède ainsi au contenu de la page "Page2" grâce à ma fonction d'affichage.

    Mais il y a deux problèmes à cette méthode :
    1. l'identifiant et le mot de passe sont en dur dans le code (si je fais afficher la source de la page)
    2. l'authentification ne fonctionne pas sur IE.

    Pour régler le point 1. pensez-vous qu'il soit possible d'appeler en ajax une page qui authentifie l'iframe ?

    Pour le point 2. aucune idée.

    Mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    <form id="authentification" name="authentification" target="nomiframe" method="post" action="la-page-de-login-du-site-externe">
    	<input type="hidden" id="username" name="username" value="..."/>
    	<input type="hidden" id="password" name="password" value="..." />
    </form>
     
    <div class="contenu_distant">
        <iframe id="nomiframe" name="nomiframe" width="800px" height="250px" scrolling="no"></iframe>
    </div>
     
    <script type="text/javascript">
    function afficherContenu() {
    $(".contenu_distant").html("<div class='contenu_distant'><iframe id='nomiframe' src='adresse-de-la-page2' width='800px' height='1300px' scrolling='no'></iframe></div>");
    }
     
    document.getElementById('authentification').submit();
    window.setTimeout("afficherContenu()",15000);
    </script>
    Merci d'avance

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    581
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 581
    Par défaut
    Alors j'ai un peu avancé sur mon problème. J'ai basculé le code de connexion dans une page "connexion.php", que j'appelle depuis ma page "Page1" en ajax comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <script>
    $(document).ready(function() {
            $.ajax({
    		type: "POST",
    		url: "connexion.php",
    		data: "connexion=1"
    	});
    });
    </script>
    Page connexion.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <form id="authentification" name="authentification" target="nomiframe" method="post" action="la-page-de-login-du-site-externe">
    	<input type="hidden" id="username" name="username" value="..."/>
    	<input type="hidden" id="password" name="password" value="..." />
    </form>
     
    <iframe id="nomiframe" name="nomiframe" width="1px" height="1px"></iframe>
     
    <script type="text/javascript">
    document.getElementById('authentification').submit();
    </script>
    Au chargement de la "Page1", il ne se passe rien, c'est à dire que la connexion de se fait pas. Alors que si je lance directement la page connexion.php, la connexion a bien lieu. Une idée ?

Discussions similaires

  1. [Débuter] Récupérer des données sur un site Web via une requête HTTP
    Par sauvezmoi dans le forum Réseau
    Réponses: 1
    Dernier message: 29/04/2015, 16h03
  2. Réponses: 1
    Dernier message: 14/05/2008, 19h20
  3. Insérer une video sur un site webdev via Flash
    Par kwakly dans le forum Flash
    Réponses: 3
    Dernier message: 13/12/2007, 19h24
  4. Réponses: 2
    Dernier message: 08/11/2003, 23h42

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