我有一个搜索脚本,记录在MySQL数据库中的每个搜索查询,除非该词在我的黑名单上。但是,当表中的条目超过3个时,将不允许更多条目。为什么会这样呢?
我的PHP脚本是:
<?php
mysql_connect("localhost","username","password");
mysql_select_db("database");
if(!empty($_GET['q'])){
$query=mysql_real_escape_string(trim($_GET['q']));
$searchSQL="SELECT * FROM links WHERE `title` LIKE '%{$query}%' LIMIT 8";
$searchResult=mysql_query($searchSQL);
while ($row=mysql_fetch_assoc($searchResult)){
$results[]="<div class='webresult'><div class='title'><a href='{$row['url']}'>{$row['title']}</a></div><div class='desc'>{$row['description']}</div><div class='url'>{$row['url']}</div></div>";
}
if(empty($results)){
echo 'No results were found';
} else {
echo implode($results);
}
}
$block=array('word', 'word');
if(!in_array($query, $block)){
function logQuery($query){
$query="insert into queries (query) values ('$query') on duplicate key update value=value+1";
mysql_query($query);
}
logQuery($query);
}
?>发布于 2011-06-27 03:04:02
检查您的表结构。确保你的主键有一个自动递增的问题。此外,不要在任何字段上使用unique,因为可能有重复的字段。
发布于 2011-06-27 03:01:19
因为它可能是重复的,而你的'value‘只是增加了1
https://stackoverflow.com/questions/6486049
复制相似问题