我一直在做一個登錄/註冊系統,我正在接近完成我的註冊部分代碼。我遇到的唯一問題是如何使用戶無法註冊重複的用戶名。我希望它能夠工作,以便我的數據庫不會接受這些信息,並且它會告訴用戶有關錯誤。任何幫助表示讚賞。如何防止用戶註冊時出現重複的用戶名? PHP/MySQL
我的PHP
<?php
include ('database_connection.php');
if (isset($_POST['formsubmitted'])) {
$error = array();//Declare An Array to store any error message
if (empty($_POST['name'])) {//if no name has been supplied
$error[] = 'Please Enter a name ';//add to array "error"
} else {
$name = $_POST['name'];//else assign it a variable
}
if (empty($_POST['e-mail'])) {
$error[] = 'Please Enter your Email ';
} else {
if (preg_match("/^([a-zA-Z0-9])+([a-zA-Z0-9\._-])*@([a-zA-Z0-9_-])+([a-zA-Z0-9\._-]+)+$/", $_POST['e-mail'])) {
//regular expression for email validation
$Email = $_POST['e-mail'];
} else {
$error[] = 'Your EMail Address is invalid ';
}
}
if (empty($_POST['Password'])) {
$error[] = 'Please Enter Your Password ';
} else {
$Password = $_POST['Password'];
}
if (empty($error)) //send to Database if there's no error '
很抱歉等待,但這完全解決了我的問題!我只是在大約10分鐘前將它放入我的代碼中,它將不再接受重複的用戶名並輸出錯誤。 – Zippylicious
非常感謝你爲我+的代表,我很高興這個答案爲你工作,我想跟你說一些東西,當你創建用戶的專欄,你可以使它獨一無二,例如創建表用戶(username varchar(350)not null unique),祝你好運:) –