2010-07-15 80 views
0

這可能嗎?訪問asp.net遠程站點的本地站點上的PHP登錄表單

我想在我的網站上有一個PHP登錄表單。當用戶輸入用戶名和密碼並單擊提交時,應將其定向到登錄的遠程網站(因此跳過遠程站點上的登錄表單)。

正如標題中所述,遠程站點使用ASP.NET構建。

我試圖尋找一個解決方案,但真的找不到任何東西,所以一些幫助和建議將受到歡迎。

謝謝,馬克。

回答

0

你是否擁有遠程站點?

如果不是,唯一的解決方法是通過POST/GET發送正確的參數來提交帶有捲曲的遠程表單。您必須檢查遠程表單的html源代碼,以瞭解您必須通​​過哪些參數。儘管如此,只要遠程網站將在其表單上實施一些CRSF保護,該解決方案就會被中斷。

+0

不,我不擁有遠程站點。 我試過使用捲曲,但沒有運氣讓它工作。捲曲檢索遠程站點登錄頁面並將其加載到我的本地頁面嗎?這對我不起作用,因爲我不支持asp.net ....謝謝。 – 2010-07-15 09:09:37

+0

絕對不是。 Curl正在將數據傳遞給遠程資源。 也許你應該嘗試挖掘這一個:http://fr2.php.net/manual/en/book.curl.php第一。 順便說一句,你試圖達到什麼不清楚,你爲什麼要提交一個你不擁有的表單? – bPizzi 2010-07-15 11:28:01

+0

感謝您的鏈接。 基本上,asp.net網站是使用我們的產品的用戶有權訪問的項目管理應用程序。我們希望能夠允許用戶通過我們的網站登錄,以便我們維持品牌。然後,用戶將直接轉到已登錄的項目管理應用程序。 – 2010-07-15 12:53:22

0

您是否試圖直接從您的PHP腳本直接發佈到ASP.NET表單?

+0

是的,它只是重新指向他們的登錄表單 – 2010-07-15 09:32:00

+0

可能是因爲他們的腳本正在檢查發佈數據的來源。我想沒有辦法直接發佈給他們。 如果是這種情況,那麼CURL也不起作用。 任何機會,你可以跟另一側的管理員,讓他們讓你的代碼張貼過來? – iWantSimpleLife 2010-07-19 05:13:49

+0

他們是否檢查發佈表單的HTML引用者?如果是,您可以嘗試欺騙推薦人。 – iWantSimpleLife 2010-07-23 02:35:55

4

我已經有了相同的情況,我需要發佈一個遠程表單。如果我沒有記錯,我做了以下:

  • 創建http處理程序(我用這個Zend_Http)。
  • 首先通過GET獲取頁面。
  • 搜索所有表單元素及其值的響應。
  • 在http處理程序中設置這些值。
  • 設置你自己的值(如用戶名/密碼)。
  • 執行POST

asp.net應用程序創建有點醜態。他們在表單中使用了很多隱藏的值(至少在我的情況下)。您需要啓用Cookie才能進行更改。

希望這會有所幫助。