ยินดีต้อนรับคุณ, บุคคลทั่วไป กรุณา เข้าสู่ระบบ หรือ ลงทะเบียน

เข้าสู่ระบบด้วยชื่อผู้ใช้ รหัสผ่าน และระยะเวลาในเซสชั่น

ThaiSEOBoard.comพัฒนาเว็บไซต์Programmingสอบถามเรื่อง curl login ของ php ครับ
หน้า: [1]   ลงล่าง
พิมพ์
ผู้เขียน หัวข้อ: สอบถามเรื่อง curl login ของ php ครับ  (อ่าน 2417 ครั้ง)
0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้
porder
คนรักเสียว
*

พลังน้ำใจ: 4
ออฟไลน์ ออฟไลน์

กระทู้: 171



ดูรายละเอียด เว็บไซต์
« เมื่อ: 09 มีนาคม 2012, 01:08:09 »

มีข้อสงสัยเรื่อง Curl ครับ

พอดีลองกับ facebook ก็เข้าหน้าได้แต่ไม่เข้าใจตรงที่ว่า
ทำไมพอเข้าพอเปิดแท็บแล้วพิมพ์ hxxp://www.facebook.com
ทำไมไม่จดจำค่าการเข้าสู่ระบบอ่ะครับ หรือผมควรเพิ่มเติมอะไรหรือเปล่าครับ
จริงๆลองกับ thaiseoboard แล้วด้วยก็เป็นแบบเดียวกันครับ

ขอบคุณมากครับ

โค๊ด:
<?
$login_email = ''; // email ผู้ใช้
$login_pass = ''; // รหัสผ่าน
$face_cookie = 'cookie.txt';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, '[url]https://www.facebook.com/login.php?login_attempt=1'[/url]);
curl_setopt($ch, CURLOPT_POSTFIELDS,'email='.urlencode($login_email).'&pass='.urlencode($login_pass).'&login=Login');
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_COOKIEJAR, $face_cookie);
curl_setopt($ch, CURLOPT_COOKIEFILE, $face_cookie);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 0);
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.3) Gecko/20070309 Firefox/2.0.0.3");
curl_exec($ch);
?>

ตรง CURLOPT_URL ลบ [.url.]........[./url.] ด้วยนะครับ โพสไม่รู้ว่ามาได้ไง

 wanwan017  wanwan017  wanwan017
« แก้ไขครั้งสุดท้าย: 09 มีนาคม 2012, 01:25:29 โดย porder » บันทึกการเข้า

ohmohm
เจ้าพ่อบอร์ดเสียว
*

พลังน้ำใจ: 170
ออฟไลน์ ออฟไลน์

กระทู้: 3,098



ดูรายละเอียด เว็บไซต์
« ตอบ #1 เมื่อ: 09 มีนาคม 2012, 14:09:29 »

แล้วที่เปิดแท็บได้เอา cookie.txt ไปใช้ด้วยไหมครับ
http://www.ietf.org/rfc/rfc2109.txt
บันทึกการเข้า
bot2o
สมุนแก๊งเสียว
*

พลังน้ำใจ: 161
ออฟไลน์ ออฟไลน์

กระทู้: 971



ดูรายละเอียด
« ตอบ #2 เมื่อ: 09 มีนาคม 2012, 15:34:37 »

$a = cURL("https://login.facebook.com/login.php?login_attempt=1 ", true, null, "email=$email&pass=$password&login=Login");
//echo $a;
preg_match('%Set-Cookie: ([^;]+);%',$a,$b);
sleep(5);
$c = cURL("https://login.facebook.com/login.php?login_attempt=1 ", true, $b[1], "email=$email&pass=$password&login=Login");
//echo $c;
sleep(5);
preg_match_all('%Set-Cookie: ([^;]+);%',$c,$d);
for($i=0;$i<count($d[0]);$i++)
   $cookie.=$d[1][$i].";";

function cURL($url, $header=NULL, $cookie=NULL, $p=NULL)
{
   $ch = curl_init();
   curl_setopt($ch, CURLOPT_HEADER, $header);
   curl_setopt($ch, CURLOPT_NOBODY, $header);
   curl_setopt($ch, CURLOPT_URL, $url);
   curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
   curl_setopt($ch, CURLOPT_COOKIE, $cookie);
   //curl_setopt($ch, CURLOPT_COOKIEJAR, "my_cookies.txt");
 // curl_setopt($ch, CURLOPT_COOKIEFILE, "my_cookies.txt");
   curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.0.12) Gecko/2009070611 Firefox/3.0.12");
   curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
   curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
   curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
   curl_setopt($ch, CURLOPT_TIMEOUT,120);

   if ($p) {
      curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
      curl_setopt($ch, CURLOPT_POST, 1);
      curl_setopt($ch, CURLOPT_POSTFIELDS, $p);
   }
   $result = curl_exec($ch);

   if ($result) {
      return $result;
   } else {
      return curl_error($ch);
   }
   curl_close($ch);
}

ผมไปเจอมา แต่จำไม่ได้ว่า เอามาจากไหน
บันทึกการเข้า

porder
คนรักเสียว
*

พลังน้ำใจ: 4
ออฟไลน์ ออฟไลน์

กระทู้: 171



ดูรายละเอียด เว็บไซต์
« ตอบ #3 เมื่อ: 09 มีนาคม 2012, 18:45:58 »

เด๋วจะเอาไปลองศึกษาดูครับ ขอบคุณครับ ทั้ง 2 ท่านเลย +1

 Cry
บันทึกการเข้า

henthai
Newbie
*

พลังน้ำใจ: 2
ออฟไลน์ ออฟไลน์

กระทู้: 36



ดูรายละเอียด เว็บไซต์
« ตอบ #4 เมื่อ: 09 มีนาคม 2012, 20:31:16 »

อ้างถึง
ทำไมไม่จดจำค่าการเข้าสู่ระบบอ่ะครับ หรือผมควรเพิ่มเติมอะไรหรือเปล่าครับ

curl_setopt($ch, CURLOPT_POSTFIELDS,'email='.urlencode($login_email).'&pass='.urlencode($login_pass).'&persistent=1&login=Login');
บันทึกการเข้า
หน้า: [1]   ขึ้นบน
พิมพ์