Php Codeigniter-如何通过输入随机ID或代码防止用户访问数据
我对查看数据有一个问题。我正在做一些房地产项目,其中有一个代码页(输入房屋状态代码)和一个状态页(显示房屋详细信息)。现在,我可以阻止用户在输入错误代码时重定向到状态页面,直到他们输入正确的代码。如果用户试图在状态页面的URL中输入一些随机代码,那么如果代码错误,页面将显示错误。我怎样才能避免这种情况?在这种情况下,如何将用户重定向回代码页 更新: 我在我的查看页面上使用了以下条件:Php Codeigniter-如何通过输入随机ID或代码防止用户访问数据,php,codeigniter,Php,Codeigniter,我对查看数据有一个问题。我正在做一些房地产项目,其中有一个代码页(输入房屋状态代码)和一个状态页(显示房屋详细信息)。现在,我可以阻止用户在输入错误代码时重定向到状态页面,直到他们输入正确的代码。如果用户试图在状态页面的URL中输入一些随机代码,那么如果代码错误,页面将显示错误。我怎样才能避免这种情况?在这种情况下,如何将用户重定向回代码页 更新: 我在我的查看页面上使用了以下条件: <body id="status-page"> <?php if($listing[
<body id="status-page">
<?php
if($listing[0]['code'] != $listing_code){
die();
}else{ ?>
<!-- Content -->
<div class="page-loader-wrapper">
....
</div>
<?php } ?>
型号:
function get_listing($listing_code){
$this->db->select('*');
$this->db->from($this->listings_table);
$this->db->where('code',$listing_code);
$query = $this->db->get();
$result = $query->result_array();
return $result;
}
一切正常,只是当我将url代码更改为一个错误的url代码,而不是终止页面时,它会显示错误…您有不同的选项 1)生成一个难以猜测的代码,您可以使用如下方法
$code = substr(md5(rand(16, time())), 0, 16);
如果用户输入错误的代码,它会替换错误
使用if命令终止页面的其余部分if(检查代码是否存在的条件){die();}
2) 或者创建一个登录名并创建一个表,列出可以使用代码的人员在哪里使用条件?在控制器或视图中?你能准确地告诉我条件吗,我不知道现有代码的变量是$code,用户输入的代码是$inputyou write
if($code!=input){die();}否则{//无论需要发生什么}
我知道了,但是我把条件放在哪里?查看原因这就是你想向用户展示的,对吗?虽然我没有使用codeigniter的经验
$code = substr(md5(rand(16, time())), 0, 16);