所以我一直在瀏覽StackOverflow和MySQL手冊一段時間,似乎無法解決我的問題。我想要做的只是讓我的數據INSERT函數,使它不會添加任何東西,如果它已經存在我的表。我看到了一些方法:INSERT IGNORE函數和一個唯一的索引,對我來說似乎是最好的,但我不知道爲什麼它不工作......這是我的代碼的一部分(我有兩列:'用戶名'和'電子郵件',我的表被稱爲'info4'):僅當數據不存在時纔在MySQL表中插入數據:使用INSERT IGNORE時遇到問題
$unique_index = mysqli_query ($con, "CREATE UNIQUE INDEX index ON info4 (username, email);");
$insert = mysqli_query($con, "INSERT IGNORE INTO info4 (`username`, `email`) VALUES ('$array_values[0]', '$array_values[1]')");
我哪裏錯了?我錯過了什麼?
謝謝你的回答。我添加了插入忽略,因爲我讀它可以防止發生錯誤。這些變量的值來自一個表單。事實上,這段代碼位於process.php頁面,用於html用戶表單;這些值由用戶輸入。我的問題是,如果用戶多次使用表單並且多次輸入相同的值,它會不止一次出現在我的表中,這就是我想要阻止的。而最後的代碼並不顯示任何內容,這是否意味着我的索引不會被創建? – tmnol
@TudorManole你在哪裏輸入SHOW INDEX查詢? – TheMethod