导航:首页 > 净水问答 > thinkphp参数过滤器

thinkphp参数过滤器

发布时间:2021-02-15 13:41:01

Ⅰ thinkphp怎么隐藏参数变量

'URL_CASE_INSENSITIVE' => true, // 默认false 表示URL区分大小写 true则表示不区分大小写
'URL_MODEL' => 2, // URL访问模式,可选参数0、1、2、3,代表以下四种模式:
// 0 (普通模式); 1 (PATHINFO 模式); 2 (REWRITE 模式); 3 (兼容模式) 默认为PATHINFO 模式
Nginx
推荐:
location / {
try_files $uri $uri/ /index.php?s=$uri&$args;
}
意思是:如果第一个$uri不存在,就访问$uri/;如果$uri/还不存在,访问/index.php?s=$uri&$args。可以后面跟很多个。
try_files
语法: try_files file1 [file2 ... filen] fallback
默认值: 无
作用域: location
再例如:
try_files $uri = 404
什么意思呢?uri不能成功访问,那好,那就给你个404吧。
但是在网上找到的文章大部分是这样配置的:
location / {
if (!-e $request_filename) {
rewrite ^/(.*)$ /index.php?/$1 last;
break;
}
}
实际上不可行。
Apache
在根目录新建.htaccess文件:
<IfMole mod_rewrite.c>
Options +FollowSymlinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
</IfMole>
IIS环境
如果你的服务器环境支持ISAPI_Rewrite的话,可以配置httpd.ini文件,添加下面的内容:
RewriteRule (.*)$ /index\.php\?s=$1 [I]你看看这样呢,我也是刚问我在后盾网学习的朋友,希望能帮到你,(›´ω`‹ )加油

Ⅱ thinkphp5 可选参数怎么匹配

应用配置文件也就是调用所有模块之前都会首先加载的公共配置文件(默认位于Application/Common/Conf/config.php)。
return array(
‘DEFAULT_MODULE’ => ‘Index’, //默认模块
‘URL_MODEL’ => ‘2’, //URL模式
‘SESSION_AUTO_START’ => true, //是否开启session,
);
1)读取配置
model=C(‘URLMODEL′);我们需要动态改变数据缓存的有效期的话,可以使用C(‘DATACACHETIME′,60);2)读取数据库中的配置参数config = M(‘Config’)->getField(‘name,value’);
// config是一个关联数组 键值就是配置参数 值就是配置值
// 例如: array(‘config1’=>’val1’,’config2’=>’val2’,…)
C($config); // 合并配置参数到全局配置如果你还不明白的话,你可以在后盾人平台看看教材视频,多看看几遍,慢慢的不就会了,如果嫌弃麻烦,你可以直接去后盾人线下面授培训问问那些专家讲师,他们很乐意帮你的,希望能帮到你,给个采纳吧谢谢,(๑•㉨•๑)ฅ

Ⅲ thinkphp 如何传递一个带参数的方法到模板

给你修正一抄下吧,袭tbl_teachmaterial_baseinfo应该是你的表名吧,那就这样写!另外是不是传到模板里?
function kidlist(){
$tb_teachbase = M ( "TeachmaterialBaseinfo" );
$num=某个条件;
$result=$tb_teachbase->where("su_id='$num'")->select();
$this->assign('abc',$result);
if($result){
$this->success('查找成功');
}else{
$this->error('查找失败');
}
}
然后要模板中在显示的地方用{$abc}就可以了。

Ⅳ ThinkPHP控制器参数绑定中,参数已用I函数过滤了吗

默认带的参数就是复需要验证制的表单名称,所以你上面的写法应该是没问题的 但是需要注意的是:checkidcard($sfzh)函数的返回值应改为true或者false,分别表示验证通过或失败 function checkidcard($sfzh){ if(!preg_match('// 验证正则 ..', $sfzh).

Ⅳ thinkphp 实例化控制器时怎么带参数

R方法用于调用某复个控制器的操制作方法,是A方法的进一步增强和补充。

R方法的调用格式:
R('[项目://][分组/]模块/操作','参数','控制器层名称')

classUserActionextendsAction{
publicfunctiondetail($id){
returnM('User')->find($id);
}
}

那么就可以通过R方法在其他控制器里面调用这个操作方法

$data=R('User/detail',array('5'));

希望对你有帮助!

Ⅵ php 关于thinkphp的防sql注入跟过滤问题

防止注入
opensns
对于WEB应用来说,SQL注入攻击无疑是首要防范的安全问题,系统底层对于数据安全方面本身进行了很多的处理和相应的防范机制,例如:
$User = M("User"); // 实例化User对象
$User->find($_GET["id"]);
即便用户输入了一些恶意的id参数,系统也会强制转换成整型,避免恶意注入。这是因为,系统会对数据进行强制的数据类型检测,并且对数据来源进行数据格式转换。而且,对于字符串类型的数据,ThinkPHP都会进行escape_string处理(real_escape_string,mysql_escape_string)。
通常的安全隐患在于你的查询条件使用了字符串参数,然后其中一些变量又依赖由客户端的用户输入,要有效的防止SQL注入问题,我们建议:
查询条件尽量使用数组方式,这是更为安全的方式;
如果不得已必须使用字符串查询条件,使用预处理机制(3.1版本新增特性);
开启数据字段类型验证,可以对数值数据类型做强制转换;(3.1版本开始已经强制进行字段类型验证了)
使用自动验证和自动完成机制进行针对应用的自定义过滤;
字段类型检查、自动验证和自动完成机制我们在相关部分已经有详细的描述。
查询条件预处理
where方法使用字符串条件的时候,支持预处理(安全过滤),并支持两种方式传入预处理参数,例如:
$Model->where("id=%d and username='%s' and xx='%f'",array($id,$username,$xx))->select();
或者
$Model->where("id=%d and username='%s' and xx='%f'",$id,$username,$xx)->select();
模型的query和execute方法 同样支持预处理机制,例如:
$model->query('select * from user where id=%d and status=%d',$id,$status);
或者
$model->query('select * from user where id=%d and status=%d',array($id,$status));
execute方法用法同query方法。

Ⅶ thinkphp里控制器的方法参数可以接收POST参数么

thinkphp里控制器的方法参数当然可以接收POST参数,这种问题你直接写个demo测试一下就好了,代专码如下:

$id=I('post.id');//相当于$_POST['id']
del($id);//调用属del函数
publicfunctiondel($id)
{
$model=D('Messages');
$model->delete($id);//删除主键id=$id的那一行
$this->success('操作成功!',U('lst'));//这里U(‘lst’)的路径应该会用问题吧?
}



Ⅷ thinkphp怎么加密url参数

/**
*系统加密方法
*@$data要加密的字符串
*@paramstring$key加密钥
*@paramint$expire过期时间单位秒
*returnstring
*@author麦当苗儿<[email protected]>
*/
functionthink_encrypt($data,$key='',$expire=0){
$key=md5(empty($key)?C('DATA_AUTH_KEY'):$key);
$data=base64_encode($data);
$x=0;
$len=strlen($data);
$l=strlen($key);
$char='';
for($i=0;$i<$len;$i++){
if($x==$l)$x=0;
$char.=substr($key,$x,1);
$x++;
}
$str=sprintf('%010d',$expire?$expire+time():0);
for($i=0;$i<$len;$i++){
$str.=chr(ord(substr($data,$i,1))+(ord(substr($char,$i,1)))%256);
}
returnstr_replace(array('+','/','='),array('-','_',''),base64_encode($str));
}
/**
*系统解方法
*@paramstring$data要解的字符串(必须是think_encrypt方法加密的字符串)
*@paramstring$key加密密钥
*returnstring
*@author当苗儿<[email protected]>
*/
functionthink_decrypt($data,$key=''){
$key=md5(empty($key)?C('DATA_AUTH_KEY'):$key);
$data=str_replace(array('-','_'),array('+','/'),$data);
$mod4=strlen($data)%4;
if($mod4){
$data.=substr('====',$mod4);
}
$data=base64_decode($data);
$expire=substr($data,0,10);
$data=substr($data,10);
if($expire>0&&$expire<time()){
return'';
}
$x=0;
$len=strlen($data);
$l=strlen($key);
$char=$str='';
for($i=0;$i<$len;$i++){
if($x==$l)$x=0;
$char.=substr($key,$x,1);
$x++;
}
for($i=0;$i<$len;$i++){
if(ord(substr($data,$i,1))<ord(substr($char,$i,1))){
$str.=chr((ord(substr($data,$i,1))+256)-ord(substr($char,$i,1)));
}else{
$str.=chr(ord(substr($data,$i,1))-ord(substr($char,$i,1)));
}
}
returnbase64_decode($str);
}

Ⅸ thinkphp request 和 param 的区别

//要知道不管做任何项目都尽量不要去修改那些超全局变量的值

//所以专thinkphp封装了I方法

//request默认可以属接受$_GET,$_POST和$_COOKIE这是php内置的$_REQUEST超全局变量
//自己去看它的I方法只是把值获取到。

//param是thinkphp自己写的类型,自动判断是什么类型的数据就行接收。
//无论什么类型都可以接受,包括php://input这种原生数据流

Ⅹ thinkphp里获取网络请求参数且可以设置默认值和过滤方式的是哪一个方法

I方法, 具体参照官网手册内,或者容 http://www.thinkphp.cn/document/308.html

阅读全文

与thinkphp参数过滤器相关的资料

热点内容
氰化物蒸馏液能放过夜吗 浏览:596
奥琳德净水器保健效果怎么样 浏览:686
水性树脂测固含取多重 浏览:470
CBC树脂 浏览:175
农村水净化用什么净水器好 浏览:969
树脂摆件能带上飞机吗 浏览:963
污水提升器一直开着 浏览:271
饮水机保鲜定时是什么意思 浏览:23
edi能用几年 浏览:303
购买松下空调过滤网 浏览:184
餐饮店排污水怎么办 浏览:316
安吉尔陶氏ro膜价格 浏览:40
空气净化器宠物狗怎么 浏览:602
空气净化器滤网用水洗了怎么办 浏览:30
净水器反渗透膜过滤器水管怎么接 浏览:107
净水器煮鸡汤怎么熬 浏览:449
扬子净化器怎么清滤网 浏览:537
保温开水壶里的水垢怎么去除 浏览:380
化工蒸馏塔多少钱 浏览:212
不锈钢滤网滤芯如何清洗 浏览:185