我已经对此here提出了一个问题。但是因为我没有得到答案,所以帮了我很多,我想再问一次。如何更正此mysql_query,使用正确的语法并使其正常工作?
In Database [1]
Table Characters
+----+------------------+-------+---------+
|account_name| lastaccess| online| voted |
+------------+-----------+-------+--------+
| Account1 | 1231321231| 1 | 1 |
| Account1 | 132312213 | 0 | 0 |
| Account3 | 13231212 | 0 | 0 |
+------------+-----------+-------+--------+
In Database [2]
Table Accounts
+----+------------------+
| Login | lastIp |
+-----------+-----------+
| Account1 | 0.0.0.0.0 |
| Account1 | 0.0.0.0.0 |
| Account3 | 0.0.0.0.0 |
+-----------+-----------+
我已经有一个函数,获取lastIP帐户的位置。
function getclientip()
{
if (isset($_SERVER["REMOTE_ADDR"])) {
return $_SERVER["REMOTE_ADDR"];
} else if (isset($_SERVER["HTTP_X_FORWARDED_FOR"])) {
return $_SERVER["HTTP_X_FORWARDED_FOR"] ;
} else if (isset($_SERVER["HTTP_CLIENT_IP"])) {
return $_SERVER["HTTP_CLIENT_IP"] ;
}
return "0.0.0.0";
}
$Ip=getclientip();
$sql='SELECT login FROM accounts WHERE lastIp like \''.$Ip.'\';';
echo mysql_error();
$result = mysql_query($sql);
if (false === $result) {
}
while($row = mysql_fetch_array($result))
{
我想要做的是:
mysql_query('update characters SET voted=1 where account_name like \''.$row['login'].'\' and online=1;') ;
但是,在MIN(lastaccess)
只。 我希望你明白我的意思,在其他情况下问我我会更好地解释。
如果您已经问过这个问题,我会建议您提供一个链接。 – 2013-04-03 21:04:59
注意*答案正确的人,但我太困了,不注意他的问题。无论如何,我真的没有足够的技巧来自己解决它。所以这就是为什么我重新问。链接:http:// stackoverflow。com/questions/15779416 /试图检查错误 – 2013-04-03 21:06:59
@JW已经给了你一个有效的答案,包括一个嵌入SQL的PHP版本。请尝试回答并报告错误。 – koriander 2013-04-03 21:19:02