检查数据是否已存在


check if data already exist

在将变量存储在 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 ...