房仲簽約指定合作,商辦居家地板拋光打蠟,專業清潔服務空調豐富壁癌工程經驗,責任施工、品質保固,一通電話免費為您勘驗估價

首頁  •  j2h 論壇 • 程式設計討論     • 

[php] 使用 PHP 取得 登入後的 COOKIE 值(CURL)

房東:jeff
發表時間:2012-07-18
[檢舉]


為了要示範安全的概念, 所以來寫些小範例. 絕對不是要幹壞事~~~ XDDD


 


先準備兩隻小程式, 做確認程式是否有抓到 COOKIE 值.


login.php (POST 到 login.php, login.php 會確認帳號/密碼, 然後寫 COOKIE值)





<?php

if ($_POST[\'username\'] == \'admin\' && $_POST[\'password\'] == \'1234\') {

    setcookie(\'u\', \'admin\');

    header(\'Location: check_login.php\');

} else {

    echo \'failed\';

}

?>



check_login.php (確認是否有 $_COOKIE[\'u\'] 的值, 而且是否是 \'admin\', 來判斷是否已 Login)





<?php

if ($_COOKIE[\'u\'] == \'admin\') {

    echo \'Login success.\';

} else {

    echo \'Login failed.\';

}

?>



假設上述兩個檔案分別在 http://localhost/login.php / http://localhost/check_login.php, 所以就來寫下述程式, 送 POST 到 login.php, 再經由 check_login.php 做確認是否登入完成, 程式如下:



Function List



  • resource setUrlCookie($url, $postdata)

  • string getUrlContent($resource, $url) 


使用方法



  • getUrlContent(setUrlCookie($login_url, $postdata), $login_check_url);


setUrlCookie() 是 POST 送到 Login.php, 然後將 COOKIE 寫入 cookie.txt(或者可以用  tempnam() 產生一個唯一名字的檔案來儲存). 再用 getUrlContent() 去通過 COOKIE 驗證, 以取得網頁的資料.


照理說應該將上述 function 寫成一個 Class, 能方便管理 curl_init() 的 resource, 不過, 先暫時寫成 function, 應該較容易理解~





  • 贊助網站       

    廣利不動產-新板特區指名度最高、值得您信賴的好房仲
    您的托付,廣利用心為您服務
    廣利不動產-板橋在地生根最實在--新板特區指名度最高、值得您信賴的好房仲
    完整房訊,房屋、店面熱門精選物件,廣利不動產 優質仲介,房屋租賃、買賣資訊透明,交易真安心!



  •  共 0 人回應

    姓名:
    佈告內容: