2010-11-03 26 views
1

我正在用我的網站與用戶數據庫構建一個簡單的註冊應用程序。我使用PHP和MySQL。我想收取「用戶名」和「電子郵件」。兩者都是我數據庫中的主鍵。我顯然不想要這兩樣。如果a)用戶名已被佔用並且b)電子郵件已被使用,我如何向用戶提供反饋。我知道我可以對兩者進行查詢,但我認爲這可能是多餘的(2次搜索和插入)。如果我嘗試插入重複密鑰,是否有辦法從MySQL接收反饋?就像在這個,它是他在插入失敗的領域。如果不是,那麼做到這一點的最佳方法是什麼?如果重複的密鑰,我如何確定哪個主鍵(多)觸發它

謝謝大家。

回答

1

你能做的最好是執行以下:

$result = mysql_query("insert into yourtable (`username`, `email`) values ('usernamesubmitted','emailsubmitted')"); 
if (!$result) { 
     die('Invalid query: ' . mysql_error()); 
} 

的這裏的假設是,如果要插入的領域之一,是一個主鍵,並正在duplciated插入查詢將失敗。在這種情況下....輸出一條消息 - 消息將包含您可以在這種情況下獲得的最大信息,然後您可以酌情處理它

相關問題