精通php的curl的進,有點難

來源:互聯網
上載者:User
類比登陸織夢,版本5.7,已經去掉後台驗證碼,不知道為啥一直登陸不上(提示登陸成功卻又跳回登陸地址)

 


登陸成功後要跳轉到 http://localhost/dedecms/dede/article_add.php?channelid=1


回複討論(解決方案)

表示沒看懂,坐等高人,進來學習

推薦使用架構 snoopy
google一下即可。

要跳轉?你就跟著跳轉就是了
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);

應該是織夢那邊有什麼cookie沒有統一吧?

看了樓主的代碼,我倒想起了之前弄的一個東西原來是錯在這個地方了
之前,我是一起寫的。
[code]
curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_file);
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_file);
[/code]

要跳轉?你就跟著跳轉就是了
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);

加上這行也不行啊,你那邊測試過了嗎,測試過的話請貼下代碼

看了樓主的代碼,我倒想起了之前弄的一個東西原來是錯在這個地方了
之前,我是一起寫的。
[code]
curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_file);
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_file);
[/code]

那應該怎麼寫 請貼下完整的代碼

試試這個看行不行

function getHtml($url,$tmpFile,$postData)  {      $ch = curl_init($url);      curl_setopt($ch,CURLOPT_HEADER,0);      curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);        curl_setopt($ch, CURLOPT_COOKIEJAR, $tmpFile);      curl_setopt($ch, CURLOPT_COOKIEFILE, $tmpFile);       if($postData!=NULL)      {          curl_setopt($ch, CURLOPT_POST, 1);            curl_setopt($ch, CURLOPT_POSTFIELDS, $postData);       }      $content=curl_exec($ch);        curl_close($ch);       return $content;  }     ?> 

試試這個看行不行
PHP code?1234567891011121314151617function getHtml($url,$tmpFile,$postData) { $ch = curl_init($url); curl_setopt($ch,CURLOPT_HEADER,0); curl_setopt($ch, CURLOPT_……
不行用不了

Snoopy這個還真是簡單易用

要跳轉?你就跟著跳轉就是了
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); 沒人會麼

推薦使用架構 snoopy

推薦使用架構 snoopy

這個架構不管用,不信你試試

幫你跟了下代碼,會在織夢/dede/config.php 檔案 裡面

if($cuserLogin->getUserID()==-1)
{
header("location:login.php?gotopage=".urlencode($dedeNowurl));
exit();
}
這裡調處來,登入成功應該要給你個uid,你看看 在哪了搞下

幫你跟了下代碼,會在織夢/dede/config.php 檔案 裡面

if($cuserLogin->getUserID()==-1)
{
header("location:login.php?gotopage=".urlencode($dedeNowurl));
exit();
}
這裡調處來,登入成功應該要給你個uid,你看看 在哪了…… 這個應該是有的,因為都提示登陸成功了

引用 14 樓 jsbba 的回複:幫你跟了下代碼,會在織夢/dede/config.php 檔案 裡面

if($cuserLogin->getUserID()==-1)
{
header("location:login.php?gotopage=".urlencode($dedeNowurl));
exit();
}
這裡調處來,登入成……
呵呵 有但是-1 你吧這段去掉 就可以登入進去了

引用 15 樓 dz215136304 的回複:引用 14 樓 jsbba 的回複:幫你跟了下代碼,會在織夢/dede/config.php 檔案 裡面

if($cuserLogin->getUserID()==-1)
{
header("location:login.php?gotopage=".urlencode($dedeNowurl));
……

同樣不行,提示

DedeCMS 提示資訊!對不起,你沒有許可權執行此操作!點擊此返回上一頁>>

你login時抓包一下。然後把裡面header所有的資訊全部儲存下來,包括referer啊,useragent啊。。然後再用curl發這樣一個大雜燴的包,看看能不能成功

你login時抓包一下。然後把裡面header所有的資訊全部儲存下來,包括referer啊,useragent啊。。然後再用curl發這樣一個大雜燴的包,看看能不能成功 不行的

哦 樓主的代碼我證實了一下 是沒有問題的 一般的 無驗證網站是都能類比登入的 或許是你這個網站有什麼特殊的配置或者 加密驗證 你再深入查一下 登入檔案的代碼

哦 樓主的代碼我證實了一下 是沒有問題的 一般的 無驗證網站是都能類比登入的 或許是你這個網站有什麼特殊的配置或者 加密驗證 你再深入查一下 登入檔案的代碼
thankyou

header("location:login.php?gotopage=".urlencode($dedeNowurl));

dede的登陸類做了限制

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.