对不起的标题感到抱歉。WHERE sessionId = session或IF NOT MATCHING WHERE this is this。 MYSQL
即时通讯尝试创建一个脚本,可以记录用户在我的网站上查看每个会话。
,但我要记录的是不使用cookie的一次,而不是多时间机器人,因为它们将有一个diferent会话ID,
我当前的代码是
$getRecords = $this->dbCon->prepare("SELECT id FROM vis_records WHERE `time` >= :timeFrom AND sessionId = :sessionId OR ip = :ip");
$getRecords -> bindValue(':timeFrom',time()-(60*30)); // Only Search Records from the last 30 min
$getRecords -> bindValue(':sessionId',self::getSessionId());
$getRecords -> bindValue(':ip',self::getCurIp());
但与代码的东西是。
如果mysql找到匹配的sessionId或IP,它会给我一个匹配的行。
我想要做的就是 如果MySQL发现是匹配然后返回我排的SessionID如果MySQL不能找到匹配的sessionId然后尝试找到匹配的IP ..
这有可能直接在MySQL查询?
很酷谢谢我刚刚读了关于工会,我认为我需要什么,让我测试一下,如果是这样。我把你的计算机标记为apcepted。谢谢! –
实际上我甚至不能运行sql:S我得到以下消息'#1064 - 你的SQL语法有错误;检查与您的MySQL服务器版本相对应的手册,以便在'WHERE NOT EXISTS'附近使用正确的语法(SELECT id FROM vis_records WHERE'time'> = 1391702868 AND se'at line 6' Any idea? –
更新答案,纠正少量错误 –