Heim >Backend-Entwicklung >PHP-Tutorial >get或post方式传递的值获取方法

get或post方式传递的值获取方法

WBOY
WBOYOriginal
2016-06-06 20:11:081180Durchsuche

今天拿到一份源码,其中get或post传递的值获取方法没看明白,完全超出了我的PHP三观。

例:用户登录
首先,通过js的跳转location.href = "/logon/logon.php?action=logon&user="+username+"&pass="+passwd;带了三个参数,action、user、pass。(这里对这种明文且get方式直接传账号密码的方式不做讨论。)

然后到logon.php,头部是这样的

<code>`include("include/common.inc");
switch ($action)
{
case "":
    echo "<script language='\"JavaScript\"'>\n";
    echo "location.href(\"/index.php\");\n";
    echo "</script>\n";
    //form_logon();
    break;
case "logon":
    $dbh = db_connect1();
。。。。。。。。。
`
</code>

这里对$action进行判断。账号密码对的话,程序能运行,登录成功。
显然,这里的$action获取到了,且值为url中action的值。

我的理解,$action=$_GET['action']我是可以理解的。
现在用了什么黑科技,能够使get传的参数a能以$a的形式直接获取。
PS:系统是定制linux,PHP版本是5.0.5.

小弟不才,做PHP开发刚1年,从未见过如此写法。
确认了下windows下程序肯定是跑不起来的。
是linux的什么特殊配置文件,能达到这样的效果么?

回复内容:

今天拿到一份源码,其中get或post传递的值获取方法没看明白,完全超出了我的PHP三观。

例:用户登录
首先,通过js的跳转location.href = "/logon/logon.php?action=logon&user="+username+"&pass="+passwd;带了三个参数,action、user、pass。(这里对这种明文且get方式直接传账号密码的方式不做讨论。)

然后到logon.php,头部是这样的

<code>`include("include/common.inc");
switch ($action)
{
case "":
    echo "<script language='\"JavaScript\"'>\n";
    echo "location.href(\"/index.php\");\n";
    echo "</script>\n";
    //form_logon();
    break;
case "logon":
    $dbh = db_connect1();
。。。。。。。。。
`
</code>

这里对$action进行判断。账号密码对的话,程序能运行,登录成功。
显然,这里的$action获取到了,且值为url中action的值。

我的理解,$action=$_GET['action']我是可以理解的。
现在用了什么黑科技,能够使get传的参数a能以$a的形式直接获取。
PS:系统是定制linux,PHP版本是5.0.5.

小弟不才,做PHP开发刚1年,从未见过如此写法。
确认了下windows下程序肯定是跑不起来的。
是linux的什么特殊配置文件,能达到这样的效果么?

php获取表单变量有三种风格:简短、中等和冗长风格:
简短:$number;
中等:$_POST['number'];
冗长:$HTTP_POST_VARS['number']
简短风格需要把register_globals配置选项设为on,但由于安全原因,默认是off。所以一般用中等风格。

小黄鸭调试法 从第一行代码开始看,读懂每一行代码以及每一次方法之类的调用

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn