2011-12-18 57 views
0

我想向我的插入查詢添加第三條錯誤消息。 目前我有'代碼有效'和'代碼無效',我不知道我需要做什麼來添加第三個錯誤消息,將顯示重複代碼?插入前檢查重複項 - 錯誤消息

不管怎麼說,這是我的代碼。

<?php 
if(isset($_POST['submit'])){ 
    if (strlen($_POST['coda']) == 12 && substr($_POST['coda'],0,1) == '0'){ 
     $code = $_POST['coda']; 
     $remote_addr = $_SERVER['REMOTE_ADDR']; 
     $secret = $_POST['secret']; 
     $select_query = mysql_query("SELECT * FROM table WHERE code = '$code' OR ip = '$remote_addr'"); 
     if(mysql_num_rows($select_query) == 0){ 
     mysql_query("INSERT INTO table(code,secret,ip,date,used,status) VALUES('$code','$secret','$remote_addr',CURDATE(),'n','pending')"); 

     } 
     Print "<font color='green'>VALID CODE</font>"; 
} else { 

Print "<font color='red'>INVALID CODE</font>"; 
} 

}?> 

這是檢查的有效性

if (strlen($_POST['coda']) == 12 && substr($_POST['coda'],0,1) == '0') 

編輯:

想通了。

+0

請發表您的解決方案的答案,如果你已經想通了。 – deceze

+0

@deceze我嘗試過,但我不能。我必須等待8個小時,因爲我還沒有100個代表。我會盡快發佈。 – user990767

回答

0

我不知道理解你的問題,但這裏是我在想什麼:

<?php 
if(isset($_POST['submit'])){ 
    if (strlen($_POST['coda']) == 12 && substr($_POST['coda'],0,1) == '0'){ 
     $code = $_POST['coda']; 
     $remote_addr = $_SERVER['REMOTE_ADDR']; 
     $secret = $_POST['secret']; 
     if(mysql_num_rows(mysql_query("SELECT * FROM table WHERE code = '$code'")) > 0) { 
     Print "<font color='red'>DUPLICATE CODE</font>"; 
     } else { 
     $select_query = mysql_query("SELECT * FROM table WHERE code = '$code' OR ip = '$remote_addr'"); 
     if(mysql_num_rows($select_query) == 0){ 
      mysql_query("INSERT INTO table(code,secret,ip,date,used,status) VALUES('$code','$secret','$remote_addr',CURDATE(),'n','pending')"); 
      Print "<font color='green'>VALID CODE</font>"; 
     } 
     } 
    } else { 
     Print "<font color='red'>INVALID CODE</font>"; 
    } 
} 
?> 
+0

我編輯了我的第一篇文章,希望這篇文章更清楚。 – user990767

+0

那麼你想檢查代碼是否已經在你的數據庫中正確使用? – YoannM