使用if条件检查数组元素。
$investor_array = explode(",",$project[project_investor_id]);
foreach ($investor_array as $investor) {
echo $investor;
if($investor!==$user_data['id']){
header('Location: error.php');
exit;
}
}
如果$ investor_array像1,26,29,30,39,48,请告诉我这是如何工作的 和我的$ user_data ['id'] = 26
更新: 在我的应用投资者可以登录并查看他们的项目。但他们可以通过更改ID来检查其他项目,如
http://192.168.1.100/srscrm/project-details-user.php?project=34
谢谢
答案 0 :(得分:3)
使用PHP的in_array函数http://php.net/manual/en/function.in-array.php
$investor_array = explode(",",$project[project_investor_id]);
if(!in_array($user_data['id'], $investor_array)){
header('Location: error.php');
exit;
}
答案 1 :(得分:0)
您要检查元素是否在数组中,请使用此函数:
bool in_array ( mixed $needle , array $haystack [, bool $strict = FALSE ] )
http://php.net/manual/de/function.in-array.php
回答了你的问题?
答案 2 :(得分:0)
尝试这样的事情:
$project="34";
$pro_id=base64_encode($project);
http://192.168.1.100/srscrm/project-details-user.php?project=$pro_id
和第二页
使用此解码:
$pro_id=base64_decode($project);
如果投资者在网址中输入34,那么它就被解码,因此投资者没有什么可看的。