Tworzyłem system logowania/rejestrowania i zbliżam się do zakończenia mojej części rejestru dotyczącej kodu. Jedynym problemem, który napotykam, jest to, jak sprawić, aby użytkownicy nie mogli rejestrować się z powielonymi nazwami użytkowników. Chcę, żeby działał, aby moja baza danych nie akceptowała tych informacji, i poinformuje użytkownika o błędzie. Każda pomoc jest doceniana.Jak zapobiec powtarzaniu nazw użytkowników podczas rejestracji? PHP/MySQL
My 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 '
Przepraszam za czekanie, ale to rozwiązało doskonale mój problem! Właśnie umieściłem go w moim kodzie około 10 minut temu i nie będzie już akceptować zduplikowanych nazw użytkowników i wyświetli błąd. – Zippylicious
bardzo dziękuję za + rep za mnie, i cieszę się, że ta odpowiedź zadziałała dla ciebie, ale chcę ci coś powiedzieć, kiedy utworzysz kolumnę użytkownika, możesz uczynić ją wyjątkową, na przykład utwórz użytkowników stołu (nazwa użytkownika varchar (350) not null unique), powodzenia :) –