2014-11-17 52 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例子相似。

相关问题