我在一个项目中工作,我需要将数据存储在cookie中并在mysql查询中使用该数据,但我不确定安全事项.. 好吧,这是我的代码..
if(isset($_COOKIE['user_phone_id'])){
echo "";
$user_phone = $_COOKIE['user_phone'];
$user_phone_id = $_COOKIE['user_phone_id'];
$user_phone_url = strtr($user_phone, " ", "-");
echo "";
echo "<div id='phonelist_1' class='phonelist'>
<a style='color:white;font:bold 15px arial,helvetica,sans-serif; ' href='$user_phone_url'>
<img src='./phones/".$user_phone_id.".jpg' alt='$user_phone' title='$user_phone' width='100px' height='100px' />
</a><br />
<a style='color:white;font:bold 15px arial,helvetica,sans-serif; ' href='$user_phone_url' title='$user_phone'>
$user_phone
</a><br /><div class='mobilebg'>";
require_once "./phonec.php";
$sql = "select mobile_name, mobile_id, parent_id from mobiles where parent_id =" .
$user_phone_id . " ";
$rsd = mysql_query($sql);
while($rs = mysql_fetch_array($rsd)) {
$cid = $rs['mobile_id'];
$cname = $rs['name_name'];
echo " <a href='./$cid' style='width: 100%; text-decoration:none;'>
<div class='mobilatcat'>
<em style='float: right;'></em>
<em style='padding-right: 20%;float: right;'>$cname</em>
<hr style='margin: 5px;' /></div></a>";
}
echo "</div></div> ";
}
答案 0 :(得分:0)
不,这不安全。您不应在cookie中明确存储任何数据库查询或查询数据。
Cookie只是像马里奥所说的用户输入,并且很容易被篡改。考虑像这样的数据的服务器端存储选项(会话?)。
如果您确实希望将这些数据存储在Cookie中,请始终validate并在发送到数据库之前对其进行过滤。
答案 1 :(得分:-2)
为什么不使用php Sessions
<?php
session_start();
// store session data
$_SESSION['views']=1;
?>
答案 2 :(得分:-2)
使用localStorage对象,浏览器(IE8 +)广泛支持该对象。
localStorage.setItem('someData',42);稍后(即使网站或浏览器关闭时)
localStorage.getItem('someData')// === 42