我有这段代码:
$q = $_GET['q'];
$results= mysql_query("SELECT number FROM words WHERE keyword='$q'") or
die(mysql_error());;
if($results){
mysql_query("UPDATE words SET number = number + 1 WHERE keyword='$q'") or die(mysql_error());
}
else{
mysql_query("INSERT INTO words VALUES ('$q', '1', '$d')") or die(mysql_error());
}
我有表words
:
+--------+--------+-- -----+
|keyword |number |date |
+--------------------------+
|one |1 |01-01-01|
+--------------------------+
当$q
为one
时,数字会增加1
但是当$q
其他词没有发生时。我希望当$q
不在关键字列表中时进行注册,如果$q
在关键字列中,则数字会增加1.“如果单词存在”有效,但“如果它不存在't'不起作用....
请帮忙!谢谢!
答案 0 :(得分:4)
假设keyword
是表的主键,您可以在一个查询中执行此操作:
INSERT INTO words (keyword, number, date)
VALUES ('$q', 1, '$d')
ON DUPLICATE KEY UPDATE number = number + 1