2010-09-27 15 views
8

Tengo un iframe que apunta a un sitio de moodle. Necesito pasarle mi nombre de usuario y contraseña, para que cuando cargue el iframe, inicie sesión automáticamente en Moodle. Así que tengo algo como esto:Envío de datos a través del método de publicación a un iframe

<div id="iframe" style="width:787px; height:700px;"> 
<iframe id="iframeCon" src ="http://www.somesite.net/moodle/login/index.php" width="100%" height="100%" frameborder="0"> 

</iframe> 

Mi pregunta es cómo enviar mi nombre de usuario y la contraseña utilizando el método POST a esta URL?

+1

No utilice http sin SSL para hacer eso. Nunca se desea enviar contraseñas sobre redes desprotegidas. – iankit

+1

posible duplicado de [¿Cómo se publica en un iframe?] (Http://stackoverflow.com/questions/168455/how-do-you-post-to-iframe) –

Respuesta

22

Para enviar a un iframe debe usar form target.

<form id="moodleform" target="iframe" 
     method="post" action="http://www.example.com/login/index.php" > 
    <input type="hidden" name="username" value="guest"/> 
    <input type="hidden" name="password" value="guest"/> 
    <input type="hidden" name="testcookies" value="1"/> 
</form> 
<iframe name="iframe"></iframe> 
<script type="text/javascript"> 
    document.getElementById('moodleform').submit(); 
</script> 
+0

Lo he intentado, pero es no funciona. Simplemente abre la URL "http://www.example.com/login/index.php" en una nueva ventana y todavía no estoy conectado. Por supuesto, en lugar de dos "invitados", puse mis credenciales. – misaizdaleka

+0

Funciona para mí contra moodle.org. Si se abre en una nueva ventana, ha omitido el nombre 'iframe'. – bobince

+0

Por extraño que pueda parecer, tuve un problema con 'name =" toframe "'. Cambiarlo a 'name =" frame "' funcionó. Así que tal vez @misaizdaleka tenía un problema con 'name =" iframe "' (podría ser un nombre reservado ...). – Yvan

Cuestiones relacionadas