导航:首页 > 编程语言 > php过滤get参数

php过滤get参数

发布时间:2022-08-17 18:51:32

php 如果不对 POST 或者 GET 请求做过滤处理就会被注入吗

是的,如果不做过滤肯定很容易就被注入的

Ⅱ 请问PHP怎么过滤GET或者POST的参数防止js注入,或者一些html注入请请提供代码参考谢谢!

string mysql_real_escape_string ( string unescaped_string [, resource link_identifier])

本函数将 unescaped_string 中的特殊字符转义,并计及连接的当前字符集,因此可以安全用于 mysql_query()。
注: mysql_real_escape_string() 并不转义 % 和 _。
例子 1. mysql_real_escape_string() 例子
<?php
$item = "Zak's and Derick's Laptop";
$escaped_item = mysql_real_escape_string($item);
printf ("Escaped string: %s\n", $escaped_item);
?>
以上例子将产生如下输出:
Escaped string: Zak\'s and Derick\'s Laptop

Ⅲ PHP $_GET方法传过来参数过滤问题求高手指导一二!!

php有个防止sql注入的函数addslashes(),这样就会把你搜索框里传过来的单引号双引号转义掉,还有要防止跨站脚本攻击xxs,用函数htmlspecialchars (),详细可看php手册

Ⅳ 跪求PHP的__get方法的参数

__get的作用更多的会出现在比较抽象的需求中:当对象属性不存在时,以属性名为参数调用__get。
举例来说:
<?
class a{

function __get($name){
if($name == 'db') {
$this->db = mysql_connect('localhost', 'root', 'root');
mysql_select_db('test');
} else if($name == 'other1') {
// do something
} else if($name == 'other2') {
// do something
}
return $this->$name;
}

function get_data() {
// $this->db 这一句相当于调用$this->__get('db')
$query = mysql_query("select * from a", $this->db);
while($row = mysql_fetch_assoc($query)) {
print_r($row);
}
}

}

$b = new a();
$b->get_data();

?>
--------------------------
返回的值就相当于是调用$this->__get('db'); 的返回值,在上面的例子里面就是一个mysql连接句柄。
--------------------------
上面的例子的作用:
仅当需要连接mysql的时候才会产生连接,如果仅仅是静态页面,就不需要建立连接来浪费宝贵的mysql连接数。类似的,在传统面向过程的结构里,“必须”初始化的东西,都可以放在__get里面去“按需初始化”。比如smarty类,分页类 等等等等。

在MVC架构里面也经常会用到类似于:
// 调用$this->__get('somemodel')
$this->somemodel->dosomething1();
//因为在__get里面已经给'somemodel'赋值,所以此处不重复调用__get
$this->somemodel->dosomething2();

Ⅳ PHP如何过滤POST、GET、COOKIE

首先命药明白POST,GRT,COOKIE,其实它是一个数组。
你可以print_r($_POST)就明白了
所以你一可以写一个方法,
public function a ($_POST){
foreach($_POST as $val) {
/将所有的值过滤掉后赋予一个新的数组

}
return $arr;

}

Ⅵ php中,通过$_GET 和 $_POST 取得的数据 安不安全 需要什么过滤函数处理吗

引号过滤有magic_quotes_gpc(服务器配置)

函数addslashes() htmlspecialchars(,ENT_QUOTE);

注意服务器上是否已经开启magic_quotes_gpc
(php>=5.3 已经废弃了它) 如果已经开启,再进行转义会导致双层转义。 另外addslashes() addcslashes() 都不能对数组进行处理,需要写一个递归实现。
你可以使用函数get_magic_quotes_gpc()来检测它是否已经开启

不建议使用addslashes使用addslashes可能会因为数据库编码的问题使得单引号未被转义了解详情可访问: http://shiflett.org/blog/2006/jan/addslashes-versus-mysql-real-escape-string

Ⅶ 关于php如何传递数据

看了你的问题,我有点晕,本来是很困的,现在更困了。

我觉得,你这不就是一个正常的网站吗?也没什么值需要传呐?

你的登录页面向admin.php传值这个简单,直接用form表单就可以搞定了;

验证的页面完全可以和dir.php合并嘛,登录的话都是用session或cookie完成的,反正你的每个页面都必须要做这一步,直接合并就OK

另外你的dir.php就是一个正常了网页了,也就是用户需要浏览的页面对吧?那你点了对应的链接就链接不同的页面,这个不是太简单了吗?不同的页面去取不同的数据表,神马大型的网站都是这么干的呀!

另外,要和你说的是,安全不安全不是列出了什么,重要的是你列出来的东西不要包含你的字段名,这才是影响安全的重要因素,你可以通过PHP把它转换呐,PHP不就是做这个转换的吗?PHP的功能是神马?就是做这个的呀。

另外,如果你是动态页面,使用链接跳转页面,就必须用?+信息的方式,当然,我说的是初学,如果你学得深入了,可以用伪静态,更可以用纯静态,这个先不说,先把页面间通过get传值弄通,你就学会PHP了,也就是说,你正式进入了PHP的大门。

不行了,熬不住了,睡觉去了.............

Ⅷ php 如何隐藏GET的传送值

post传值。或者get加密,自己解密。可网络搜下 discuz的加密解密程序

Ⅸ PHP怎么过滤GET或者POST的参数怎么样才能保证代码不被注入

if (!get_magic_quotes_gpc())//如不美观没有开启的话{ /****需要对这几个数组,遍历,注重数组多维的情形,addslashes($str)就可以 $_GET $_POST $_COOKIE $_REQUEST ****/}

Ⅹ PHP判断是否有Get参数的方法

可采用如下方式判断
.代码如下:

if(is_array($_GET)&&count($_GET)>0)//判断是否有Get参数
{
if(isset($_GET["para"]))//判断所需要的参数是否存在,isset用来检测变量是否设置,返回trueorfalse
{
$para=$_GET["para"];//存在
}
}

阅读全文

与php过滤get参数相关的资料

热点内容
随车拍app绑定什么设备 浏览:895
方维团购系统源码 浏览:990
linux反弹shell 浏览:156
打印机接口加密狗还能用吗 浏览:299
二板股票源码 浏览:446
度人经pdf 浏览:902
怎么配置android远程服务器地址 浏览:960
java程序员看哪些书 浏览:943
什么app可以免费和外国人聊天 浏览:797
pdf手写笔 浏览:182
别永远伤在童年pdf 浏览:990
爱上北斗星男友在哪个app上看 浏览:421
主力散户派发源码 浏览:671
linux如何修复服务器时间 浏览:61
荣县优途网约车app叫什么 浏览:479
百姓网app截图是什么意思 浏览:229
php如何嵌入html 浏览:817
解压专家怎么传输 浏览:745
如何共享服务器的网络连接 浏览:136
程序员简易表白代码 浏览:170