会话ID如何找到当前用户ID
我可能不知道我在说什么,但我会试一试。会话ID如何找到当前用户ID
我希望此代码将输入“mysite.com/earth.php”的用户的此http://prntscr.com/4t9a4u值更新为3。不适合其他人。仅供进入此页面的用户使用。所以我想让这段代码读取用户拥有的id,然后将当前用户的“盟友”值从-1更新到数据库中的3。你知不知道怎么?问我是否要我解释更多。
<?php
error_reporting(E_ALL);
ini_set('display_errors', '1');
session_start();
$verbindung = mysql_connect("localhost","root","****");
mysql_select_db("lan");
// setting up value in session
$_SESSION['id'] = $id; //or $id your variable
if(isset($_SESSION['id'])) {
mysql_query("UPDATE users SET ally='3' WHERE id='".$_SESSION['id']."'");
}
?>
这取决于您的身份验证设置。在登录用户时,用户ID应该存储在一个会话中,然后可以像在代码片段中显示的那样检索它。
您似乎没有设置$ ID下面一行:
$_SESSION['id'] = $id;
这需要在用户登录时进行设置。
边注意:您应该真正查看参数化查询以避免SQL注入。
那我该怎么做?这是一个很好的教程,或者你可以解释一下吗?谢谢 – Emrik 2014-10-05 13:42:41
参数化查询与您的原始问题无关,但强烈建议您提高安全性。这里是更多信息的地方:http://stackoverflow.com/questions/60174/how-can-i-prevent-sql-injection-in-php – CaveSpider 2014-10-05 15:22:34
旁注:请更改您的数据库密码,因为它现在在网络上(在另一个版本中)。 – Caramiriel 2014-10-05 13:42:03