检查drupal数据库中是否存在一个值


Checking if a value exists in drupal database

我正在drupal中制作表单,并想检查是否已经存在于我的数据库中的电子邮件。

  db_insert('CASL_SUBBED')
    ->fields(array(

      'email' => $form_state['values']['email'],//email
      'ip' => $ip55,//ip
      'substatus' => $subbed,
      'datetime' => $sDate,//date and time

这是我插入数据库的代码,但我想在插入之前看看电子邮件是否已经存在。有什么办法可以这么做吗?谢谢。

我不认为你可以在插入的同时检查它是否存在。尝试先检查它是否存在,如果不像这样,然后运行插入:

    $hasEmail = db_select('CASL_SUBBED', 'n')
        ->fields('n')
        ->condition('email', $form_state['values']['email'],'=')
        ->execute()
        ->fetchAssoc();
    if(!$hasEmail) {
        db_insert('CASL_SUBBED')
            ->fields(array(
              'email' => $form_state['values']['email'],//email
              'ip' => $ip55,//ip
              'substatus' => $subbed,
              'datetime' => $sDate,//date and time
        ))
        ->execute();    
    }
相关文章: