2014-11-17 191 views
0

我來自ASP.NET MVC背景,這是我第一次嘗試在PHP中寫東西。 在ASP.NET MVC中,我們可以爲我們的數據開發模型,並使用我們編寫的操作,我們可以獲取它們或將它們發送到其他操作。我的意思是,PHP:發送請求並獲得響應

public ActionResult Login_Action(LoginModel _Model) { 
    // Authenticating the user 
    return RedirectToAction(X); 
} 
調用這一點,在地址欄中顯示的URL時(使用GET的情況下,如果是POST沒什麼頁面名稱後會顯示)

將是:

www.WebsiteX.com/Login?Username=something&Password=something 

問題是,我甚至不知道如何在谷歌搜索(如通過輸入什麼),因爲在微軟方面,這些都是自動處理我描述的方式。 但是在PHP的情況下,我怎樣才能得到地址欄中的值?是否必須獲取實際地址,然後將值分解爲數組?

我很感激任何幫助。

+1

您只需使用'$ _GET ['變量']' –

+0

更改'Login?Username = something?Password = something' - >'Login?Username = something&Password = something' –

+0

有一些完美的MVC Frameworks for PHP out也是。考慮使用Symfony。 MVC模型會感覺很熟悉。 – Matheno

回答

2

首先,這對我來說似乎是無效的:www.WebsiteX.com/Login?Username=something?Password=something第一個參數需要是?,其他的應該是&

第二:通過訪問$_GET全局數組,您可以獲取參數的值。

例如,爲用戶名echo $_GET["Username"];

+0

''''是錯字,對不起,非常感謝您的回答。晶瑩剔透的答案 – JAX

+1

@JAX由於您是PHP新手,它不會自動爲您輸出轉義內容,因此可以安全地在HTML中使用。 。在這種情況下,'echo htmlspecialchars($ _ GET ['Username'],ENT_QUOTES,'UTF-8')'是防止XSS的迂腐方式。 –

2

您是否使用任何框架?你應該。然後,框架將爲您提供這樣做的方式。在ASP.NET中,您使用框架,所以在PHP中也是這樣。

使用vanille PHP,您可以使用$ _GET ['Username']獲取GET值。但請使用框架。

我認爲現在最流行的是Laravel和Symfony。

例: 在laravel您可以將參數綁定到一個變量,所以你可以這樣做:

//Url: mywebsite.com/user/1/ 
Route::get('user/{id}', function($id) 
{ 
    return 'User '.$id; 
}); 

這與ASP.NET例子相似。

相關問題