get_magic_quotes_gpc()在PHP函数描述

的get_magic_quotes_gpc函数来决定是否增加对用户所提供的数据的削减。这是在php.ini配置文件。哦,让我介绍get_magic_quotes_gpc()函数描述如下。

对get_magic_quotes_gpc功能介绍

得到的magic_quotes_gpc PHP环境变量的值,属于PHP系统的功能。

语法:长get_magic_quotes_gpc(void);

返回值:长整数

这个函数获取的变量的值magic_quotes_gpc(GPC,得到 /后/饼干)的PHP环境配置。返回0表示关闭此功能;返回1表示该功能是打开的。

当magic_quotes_gpc打开,所有的'(单引号),(双引号),和(反斜杠)和空字符自动转换为包含反斜杠字符的溢出。

magic_quotes_gpc设置是否自动添加反斜杠来传输数据(GPC,后,饼干),get_magic_quotes_gpc()检测系统的建立。

如果你不打开这个设置,您可以使用addslashes()函数来添加。它的功能是查询数据库,等它之前需要添加一个反斜杠字符。

这些字符是单引号(')、双引号(),反斜杠()和空(null字符)。

默认情况下,PHP指令magic_quotes_gpc是自动运行,addslashes()所有,后,和cookie数据。

不要用addslashes(),已通过magic_quotes_gpc字符串,因为这导致双层逃脱。在这种情况下,一个功能get_magic_quotes_gpc()可以用来检测。

例子

使用get_magic_quotes_gpc正确的做法()防止数据库攻击

代码如下


< PHP
功能check_input(价值)
{
删除/斜杠
如果(get_magic_quotes_gpc())
{
价值= stripslashes(价值);
}
如果不是引号的数目,则为
如果(!is_numeric(美元值))
{
值=。mysql_real_escape_string(价值)。
}
返回值;
}
对美元mysql_connect(localhost,你好,321);
如果(!$ CON)
{
死(不连接:'。mysql_error());
}
安全
用户名= check_input($ _post {用户});
$ pwd = check_input($ _post { 'pwd});
从用户那里选择
用户=用户和密码= $ pwd美元;
mysql_query($ SQL);
mysql_close($ CON);
>


摘要如下:

1。为magic_quotes_gpc =案例,

我们不能做输入和输出数据库的字符串数据。

Addslashes()和stripslashes()操作,数据也将正常显示。

如果你做addslashes()的输入数据,此时处理,

然后你必须使用stripslashes()删除输出多余的反斜杠。

2。为magic_quotes_gpc =关闭情况

输入的数据必须进行addslashes(),但它不需要使用stripslashes()格式化输出

因为addslashes()不写反斜线进入数据库,它不仅有助于MySQL执行SQL语句的执行

以上是本文的全部内容,希望本文的内容能给大家的学习或工作带来一定的帮助,同时也希望能给予更多的支持!