-3

我在一个项目中工作,我需要将数据存储在 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> ";
} 
4

3 回答 3

0

不,这不安全。您不应在 cookie 中显式存储任何数据库查询或查询数据。

Cookie 只是 mario 所说的用户输入,而且很容易被篡改。考虑这样的数据的服务器端存储选项(会话?)。

如果您真的想将此类数据存储在 cookie 中,请始终在发送到数据库之前对其进行验证和过滤。

于 2012-11-08T23:30:57.023 回答
-2

使用跨浏览器 (IE8+) 广泛支持的localStorage对象。

localStorage.setItem( 'someData', 42 );稍后(即使网站或浏览器关闭)

localStorage.getItem('someData') // === 42

于 2012-11-08T23:14:29.550 回答
-2

你为什么不使用 php 会话

<?php
 session_start();
 // store session data
 $_SESSION['views']=1;
 ?>
于 2012-11-08T22:49:16.273 回答