2013-03-18 76 views
0

我有2頁:提交表單使用套接字

代碼:
http://emailser1.hostzi.com/default.php cointains:

<html> 
<head><title></title></head> 
<body> 
<form action="formsend.php" method="post"> 

    address: <input type="text" name="address"> 
    <br/> 
    age: <input type="text" name="age"> 

    <input type="submit" value="send"> 
</form> 
</body> 
</html> 

http://emailser1.hostzi.com/dira/sentmail.php cointains:

<?php 
echo $_POST["address"]; 
echo "<br />"; 
echo $_POST["age"]; 
?> 

現在我該如何提交表單index.html並從sentmail.php中獲取值並在mirc中回顯? 我只需要一個例子>。 <

+0

你已經知道如何使用'sockopen'連接了,Sasuke-kun? – 2013-03-31 14:13:33

回答

1

知道HTTP請求(或本例中的POST請求)如何工作很重要。用戶使用/default.php將數據提供給/dira/sentmail.php。但是,由應用程序發送的POST請求不需要構成表單的HTML。相反,他們只是將原始數據發送到接收文件,在這種情況下爲/dira/sentmail.php

我已經做了下面的例子,它應該告訴你POST請求如何在mIRC(或任何其他語言)中工作。這可以通過/postForm <address> <age>觸發,然後將所有數據回顯到狀態窗口中。

alias postForm { 
    var %address = $$1 
    var %age = $$2 
    var %sockname = postForm. $+ $ctime 

    sockopen %sockname emailser1.hostzi.com 80 
    sockmark %sockname %address $+ , $+ %age 
} 
on *:SOCKOPEN:postForm.*:{ 
    var %data = address= $+ $gettok($sock($sockname).mark, 1, 44) $+ &age= $+ $gettok($sock($sockname).mark, 2, 44) 

    sockwrite -nt $sockname POST /dira/sentmail.php HTTP/1.1 
    sockwrite -nt $sockname Host: emailser1.hostzi.com 
    sockwrite -nt $sockname Content-Type: application/x-www-form-urlencoded 
    sockwrite -nt $sockname Content-Length: $len(%data) 
    sockwrite -nt $sockname $crlf $+ %data 
} 
on *:SOCKREAD:postForm.*:{ 
    var %sockread 
    sockread %sockread 
    echo -st %sockread 
} 

我希望這可以幫助你。如果您需要對代碼進行一些解釋,請隨時提問。