Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > AJAX
AJAX Forum sur la programmation AJAX. Avant de poster : Cours AJAX, FAQ AJAX, Toutes les FAQ JavaScript
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 07/01/2011, 15h00   #1
Membre régulier
 
Inscription : décembre 2006
Messages : 493
Détails du profil
Informations forums :
Inscription : décembre 2006
Messages : 493
Points : 90
Points : 90
Par défaut 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 :
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
nicolas2603 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/01/2011, 17h48   #2
Membre régulier
 
Inscription : décembre 2006
Messages : 493
Détails du profil
Informations forums :
Inscription : décembre 2006
Messages : 493
Points : 90
Points : 90
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 :
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 :
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 ?
nicolas2603 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 17h48.


 
 
 
 
Partenaires

Hébergement Web