>백엔드 개발 >PHP 튜토리얼 >로그인 쿠키 정보를 저장하는 PHP 시뮬레이션 로그인의 예

로그인 쿠키 정보를 저장하는 PHP 시뮬레이션 로그인의 예

WBOY
WBOY원래의
2016-07-25 08:53:111165검색
  1. function write_cookie($cookie,$db)

  2. {
  3. $fp = fopen(‘/tmp/cookie.txt’, ‘w’);
  4. fwrite($fp, $cookie);
  5. fclose($fp);
  6. }

  7. function get_cookie($db)

  8. {

  9. $handle = @fopen(“/tmp/cookie.txt”, “r”);

  10. if ($handle) {
  11. while (($buffer = fgets($handle, 4096)) !== false) {
  12. $cookie = trim($buffer);
  13. }
  14. fclose($handle);
  15. }

  16. return $cookie;

  17. }

  18. function openhttp($url,$post=”,$cookie=”,$agent=”,$referfer=”, $origin=”", $host=”", $content_type = “”, $is_header=1){

  19. $ch = curl_init();
  20. curl_setopt($ch, CURLOPT_URL, $url);

  21. $header = array();

  22. if(!empty($host)) {
  23. $header[] = “Host:zzip.ip518.com:900″;
  24. }

  25. if(!empty($origin)) {

  26. $header[] = “Origin:http://zzip.ip518.com:900″;
  27. }
  28. if(!empty($content_type)) {
  29. $header[] = “Content-Type:application/x-www-form-urlencoded”;
  30. }

  31. if(count($header)) {

  32. curl_setopt($ch, CURLOPT_HTTPHEADER,$header);
  33. }

  34. if(!empty($cookie)) curl_setopt($ch, CURLOPT_COOKIE,$cookie);

  35. //curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
  36. if(!empty($referfer)) curl_setopt($ch, CURLOPT_REFERER, $referfer);
  37. curl_setopt($ch, CURLOPT_USERAGENT, “Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.31 (KHTML, like Gecko) Chrome/26.0.1410.64 Safari/537.31″);
  38. if(!empty($post)) curl_setopt($ch, CURLOPT_POST, 1);
  39. curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
  40. if(!empty($post)) curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
  41. if($is_header) curl_setopt($ch, CURLOPT_HEADER, 1);

  42. $return = curl_exec($ch);

  43. curl_close($ch);
  44. return $return;
  45. }

  46. function login($username, $password, $login_url = “http://zzip.ip518.com:900/login.asp”)

  47. {
  48. $content=”;
  49. $cookies=”;
  50. $content = openhttp(“http://zzip.ip518.com:900/login.asp”, “name=$username&pass=$password&enter=”);
  51. $cookies = get_items($content, array(“Set-Cookie: “), array(“;”));

  52. $cookie = implode(“;”, $cookies);

  53. write_cookie($cookie);

  54. return $cookie;

  55. }

  56. login(“账号”, “密码”);

复制代码

说明: 登录成功后把cookie信息写入文件/tmp/cookie.txt,下次直接读取这个文件,以后操作此cookie文件,即可实现登录。

>>> 更多 php模拟登录 文章,专题链接:php模拟登录 php curl模拟登录教程大全



성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.