2010-09-27 39 views
8

Tôi có một khung nội tuyến trỏ đến trang web moodle. Tôi cần phải chuyển cho nó tên người dùng và mật khẩu của tôi, để khi khung nội tuyến được tải, tôi sẽ tự động đăng nhập vào moodle. Vì vậy, tôi có một cái gì đó như thế này:Gửi dữ liệu qua phương thức đăng lên 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> 

Câu hỏi của tôi là làm thế nào để gửi tên truy cập và mật khẩu của tôi sử dụng phương thức POST để URL này?

+1

Không sử dụng http mà không có SSL để thực hiện điều đó. Gửi mật khẩu qua mạng không được bảo vệ không bao giờ được mong muốn. – iankit

+1

bản sao có thể có của [Làm cách nào để bạn đăng lên iframe?] (Http://stackoverflow.com/questions/168455/how-do-you-post-to-an-iframe) –

Trả lời

22

Để đăng lên iframe, bạn phải sử dụng 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

Tôi đã thử, nhưng đó là không làm việc. Nó chỉ mở URL "http://www.example.com/login/index.php" trong một cửa sổ mới và tôi vẫn chưa đăng nhập. Tất nhiên, thay vì hai "khách", tôi đặt thông tin đăng nhập của mình. – misaizdaleka

+0

Làm việc cho tôi chống lại moodle.org. Nếu nó được mở trong một cửa sổ mới, bạn đã bỏ qua 'iframe' có tên. – bobince

+0

Như lạ khi nó xuất hiện, tôi đã có một vấn đề với 'name =" toframe "'. Thay đổi nó thành 'name =" frame "' đã làm việc. Vì vậy, có lẽ @misaizdaleka có vấn đề như vậy với 'name =" iframe "' (nó có thể là tên riêng ...). – Yvan

Các vấn đề liên quan