在将变量存储在 mysql 中之前,如何检查我的数据库中是否已存在变量。 如果$explode[$i]
存在,请转到下一步。 如果不存在,请运行下面的代码!
这是我的 php 代码:
$request_user_ids = $_GET['req'];
$explode = explode(',',$request_user_ids);
for ($i=0; $i<count($explode);$i++){
$result = mysql_query("
INSERT INTO fbinvite (memberid, fbsender, fbempfang, regdatum, fbreturn)
VALUES(NULL, '".$userid."', '".$explode[$i]."', NOW(), '0')");
我怎么能做到没有双刀片。
首先,使相关的属性集成为表的主键或唯一索引。
然后,您有几种选择:
- 盲目使用
INSERT IGNORE INTO fbinvite ...
,如果您只是想忽略重复的数据或 - 检查条目是否存在:
SELECT memberid FROM fbinvite WHERE some_attr1 = $explode[...] AND some_attr2 = $explode[...]
;并相应地继续:- 如果条目不存在,请将其插入到表中:
INSERT INTO fbinvite ...
- 如果条目存在:
- 向用户显示消息或
- 更新现有条目:
UPDATE fbinvide ... WHERE ...
- 一次插入或更新:
INSERT ... ON DUPLICATE KEY UPDATE ...
- 如果条目不存在,请将其插入到表中: