2013-03-15 107 views
-1

我遇到了一段代碼的問題。我有一個表單將信息提交給MySQL數據庫。我已經將產品密鑰保存在數據庫中。我想檢查數據庫中是否存在密鑰。我使用下面的代碼:檢查產品密鑰是否已經存在於數據庫中?

$namecheck = mysql_query("SELECT key FROM license_key WHERE key ='$userEnteredProductKey'"); 
    $count = mysql_num_rows($namecheck);   
    if($count) 
     { 
      die("FAILURE - <b>$product_name</b> has <b>NOT</b> been added because the reference number already exists."); 
     } 

如果我運行程序它給我的錯誤是:

Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in code. 

希望是有道理的,任何幫助,不勝感激。

+1

這意味着您的查詢返回任何內容。檢查查詢。的 – 2013-03-15 11:28:47

+0

可能重複的[MySQL的\ _fetch \ _array()預計參數1是資源,在布爾選擇給定](http://stackoverflow.com/questions/2973202/mysql-fetch-array-expects-parameter-1-to -be-resource-boolean-given-in-select) – deceze 2013-03-15 11:29:28

+0

那麼我必須使用哪個查詢? – Apb 2013-03-15 11:29:54

回答

0

insted的使用這個 如果($ count) 試試這個, if($ count == 1)

1

試試這個:

$namecheck = mysql_query("SELECT `key` FROM license_key WHERE `key` ='$userEnteredProductKey'"); 

key是MySQL中的保留關鍵字,所以最好不使用它或側面`把它包

編號:What does the KEY keyword mean?

0

使用l IKE在此

$namecheck = mysql_query("SELECT `key` FROM license_key WHERE `key` ='".$userEnteredProductKey."'"); 
相關問題