所以問題是$ check變量總是NULL,即使數據庫中已經有一條與我寫的SELECT語句相匹配的記錄,它仍然爲空。我知道這很簡單,但我找不到錯誤。我已經嘗試過使用空,isNull,====,但問題是$ check始終爲空。爲什麼它總是空?查詢總是返回NULL
$sql = "SELECT * FROM linkedin_lookup WHERE "
."`given-name`='{$table['given_name']}' && "
."`family-name`='{$table['family_name']}' && "
."`location`='{$table['location']}' && "
."`industry`='{$table['industry']}' && "
."`headline`='{$table['headline']}'";
$results = $db->query($sql);
$check = $results->num_rows;
if ($check):
echo "Record already exist";
else:
$sql = "INSERT INTO linkedin_lookup (`given-name`,`family-name`,`location`,`industry`,`headline`,`date_search`) "
."VALUES "
."('{$table['given_name']}',"
."'{$table['family_name']}',"
."'{$table['location']}',"
."'{$table['industry']}',"
."'{$table['headline']}',"
."'{$now}')";
$db->query($sql);
echo "Succesfully inserted record(s)" . '<br />';
endif;
更新我的代碼來反映輸入,但它仍然接受重複。我的SELECT語句錯了嗎?我把& &正確,所以它應該掃描所有領域,如果相同。
我總是看到這種類型的問題,您應該閱讀[PHP和MySQL的通用數據庫調試](http://jason.pureconcepts.net/2013/04/common-debugging-php-mysql /)。 –
你正在使用哪種數據庫擴展,'mysqli'? –
我不喜歡這個字符'在PHP腳本。有時候會導致問題提前給我。 – Fallen