Javascript PHP/MySql用户注册,如何让想要注册的用户不使用相同的用户名?
我正在制作一个网页,我希望用户有一个用户名和密码,但我不希望用户名重复,我的数据库已经连接到我的网页,并为他们提供了一个部分,以放置他们的信息,如姓名、用户名、密码等 我需要关于如何警告用户输入另一个用户名的帮助,如果他们输入的用户名已经被使用。以下是我在HTML/PHP/MySQL中的代码:Javascript PHP/MySql用户注册,如何让想要注册的用户不使用相同的用户名?,javascript,php,jquery,html,mysql,Javascript,Php,Jquery,Html,Mysql,我正在制作一个网页,我希望用户有一个用户名和密码,但我不希望用户名重复,我的数据库已经连接到我的网页,并为他们提供了一个部分,以放置他们的信息,如姓名、用户名、密码等 我需要关于如何警告用户输入另一个用户名的帮助,如果他们输入的用户名已经被使用。以下是我在HTML/PHP/MySQL中的代码: <!DOCTYPE html> <html> <head> <title>Skillfair</title> <meta char
<!DOCTYPE html>
<html>
<head>
<title>Skillfair</title>
<meta charset="utf-8"/>
<link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script>
<script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>
<link rel="stylesheet" type="text/css" href="stylesbd_o.css">
</head>
<body>
<section id="header" class="jumbotron">
<header class="container">
<div class="row">
<h2 class="col-sm-4">Database</h2>
<nav class="col-sm-8 text-right">
<p id="btnregister">Register</p>
<!--antes estaba escrito newest en vez de register-->
<p id="btncatalogo">Catalogue</p>
<p id="btnlogin">Login</p>
<!--antes estaba escrito contact en vez de login-->
<p id="btncart">Cart</p>
</nav>
</div>
</header>
</section>
<!--Seccion de la parte del registro -->
<section id="registro1" class="container">
<div id="registro">
<div class="row">
<figure class="col-sm-12">
<form id="form1" name="form1" method="post" action="" onsubmit="return valido()">
<fieldset class="col-sm-12">
<h1>Register <span> now!</span></h1>
<input name="username" type="text" placeholder="You must input your username" maxlength="20">
<input name="password" type="password" placeholder="You must input your password" maxlength="20">
<input name="name" type="text" placeholder="You must input your name(s)" maxlength="20">
<input name="lastname" type="text" placeholder="You must input your lastname" maxlength="20">
<input name="school" type="text" placeholder="You must input your school" maxlength="20">
<input name="age" type="number" placeholder="You must input your age" maxlength="2">
<input name="phone" type="tel" placeholder="You must input your phone number" maxlength="20">
<input name="email" type="email" placeholder="You must input your email" maxlength="35">
<button type="submit">Sent Data</button>
<input id="reset" type="reset" value="Clear fields" id="reset">
</fieldset>
</form>
<p id="sent">
</figure>
</div>
</div>
</section>
<!--Seccion de la parte del catalogo -->
<section class="container">
<div id="catalogo">
<div class="row">
<figure class="col-sm-6">
<p>-kitchen</p>
<img src="https://s3.amazonaws.com/codecademy-content/projects/make-a-website/lesson-4/kitchen.jpg"/>
</figure>
<figure class="col-sm-6">
<p>-woodwork</p>
<img src="https://s3.amazonaws.com/codecademy-content/projects/make-a-website/lesson-4/woodwork.jpg"/>
</figure>
</div>
<div class="row">
<figure class="col-sm-6">
<p>-gifts</p>
<img src="https://s3.amazonaws.com/codecademy-content/projects/make-a-website/lesson-4/gifts.jpg"/>
</figure>
<figure class="col-sm-6">
<p>-antiques</p>
<img src="https://s3.amazonaws.com/codecademy-content/projects/make-a-website/lesson-4/antique.jpg"/>
</figure>
</div>
</div>
</section>
<footer class="container">
<div class ="row">
<p class="col-sm-4">© 2016 Skillfair</p>
</div>
</footer>
<!-- Faltan registros (javascript)-->
<script type="text/javascript">
function valido () {
if(document.form1.username.value=="") {
alert ('You must input your username');
document.form1.username.focus();
return false;
}
if(document.form1.password.value=="") {
alert ('You must input your password');
document.form1.password.focus();
return false;
}
if(document.form1.name.value=="") {
alert ('You must input your name');
document.form1.name.focus();
return false;
}
if(document.form1.lastname.value=="") {
alert ('You must input your last name');
document.form1.lastname.focus();
return false;
}
if(document.form1.school.value=="") {
alert ('You must input your school');
document.form1.school.focus();
return false;
}
if(document.form1.age.value=="") {
alert ('You must input your age');
document.form1.age.focus();
return false;
}
if(document.form1.phone.value=="") {
alert ('You must input your phone number');
document.form1.phone.focus();
return false;
}
if(document.form1.email.value=="") {
alert ('You must input your email');
document.form1.email.focus();
return false;
}
else {
alert ('Success!!');
return true;
}
}
</script>
<script>
/* script para la apertura y cierre del boton register */
$(document).ready(function(){
$("#btnregister").click(function(){
$("#registro").fadeToggle("slow");
$("#catalogo").hide();
});
$("#registro").hide();
});
/* script para la apertura y cierre del boton catalogo */
$(document).ready(function(){
$("#btncatalogo").click(function(){
$("#catalogo").fadeToggle("slow");
$("#registro").hide();
});
$("#catalogo").hide();
});
</script>
<?php
//Connect to database
mysql_pconnect('localhost:8889','xxxx','xxxx');
//***********************
//Select database
mysql_select_db('users');
//***********************
//Insert data into database
if (isset($_POST['username']))
{
$username=$_POST['username'];
$password=$_POST['password'];
$name=$_POST['name'];
$lastname=$_POST['lastname'];
$school=$_POST['school'];
$age=$_POST['age'];
$phone=$_POST['phone'];
$email=$_POST['email'];
$cad="insert into users.data (username, password, name, lastname, school, age, phone, email) values ('".$username."','".$password."','".$name."','".$lastname."','".$school."','".$age."','".$phone."','".$email."') ";
mysql_query($cad);
}
?>
</body>
</html>
斯基尔费尔
数据库
注册
目录
登录
购物车
现在注册!
发送数据
-厨房
-木制品
-礼物
-古董
©;2016年技能博览会
函数valido(){
if(document.form1.username.value==“”){
警报(“您必须输入您的用户名”);
document.form1.username.focus();
返回false;
}
if(document.form1.password.value==“”){
警报(“您必须输入密码”);
document.form1.password.focus();
返回false;
}
if(document.form1.name.value==“”){
警报(“您必须输入您的姓名”);
document.form1.name.focus();
返回false;
}
if(document.form1.lastname.value==“”){
警报(“您必须输入您的姓氏”);
document.form1.lastname.focus();
返回false;
}
if(document.form1.school.value==“”){
警报(“您必须输入您的学校”);
document.form1.school.focus();
返回false;
}
if(document.form1.age.value==“”){
提醒(“您必须输入您的年龄”);
document.form1.age.focus();
返回false;
}
if(document.form1.phone.value==“”){
警报(“您必须输入您的电话号码”);
document.form1.phone.focus();
返回false;
}
if(document.form1.email.value==“”){
警报(“您必须输入您的电子邮件”);
document.form1.email.focus();
返回false;
}
否则{
警惕('Success!!');
返回true;
}
}
/*关于开孔和开孔寄存器的脚本*/
$(文档).ready(函数(){
$(“#btnregister”)。单击(函数(){
$(“#registro”).fadeToggle(“慢”);
$(“#catalogo”).hide();
});
$(“#registro”).hide();
});
/*手稿:开胃酒和开胃酒*/
$(文档).ready(函数(){
$(“#btncatalogo”)。单击(函数(){
$(“#catalogo”).fadeToggle(“慢”);
$(“#registro”).hide();
});
$(“#catalogo”).hide();
});
您可以使用ajax实现该功能。只需将数据发布到php文件,该文件使用ajax检查重复
这里有一个例子可以解决你的问题
HTML
jquery代码
$("#user").keyup(function (e) {
e.preventDefault();
var user = $(this).val();
var dataString = 'user=' + user;
$.ajax({
type: 'POST',
url: 'checkusername.php',
data: dataString,
cache: false,
success: function (html)
{
$("#usererr").html(html);
}
});
});
PHP(代码checkuser.PHP)
if($\u POST)
{
如果(isset($_POST['user']))
{
$user=strtolower(sanitizeString($_POST['user']);
$query=“select*from users.data,其中username=”“$user.”;
$result=mysql\u query($query);
if(mysql_num_rows($result)==0)
{
echo“用户名可用
”;
}
其他的
{
echo“用户名已被使用。请选择其他用户名。
”;
echo'var user=document.getElementById(“用户”);'
“user.value=”“;”;
}
}
}
注意:mysql_*函数已折旧,不再使用。我已经根据您的需要提供了代码。强烈建议您升级到mysqli_*函数。对php文件进行ajax调用,检查用户名并将响应返回到主页中的div中。如果回答为否定,请删除此帖子并创建新帖子。不要添加任何敏感度数据!使用户名
唯一;或者在插入之前检查用户名是否不存在。这对SQL注入是开放的。密码不应为纯文本。您使用的是不推荐使用且不安全的内容,请同时查看。如果您对主索引使用代理密钥,则会对用户名字段设置唯一约束。如果您想要不区分大小写的唯一用户名,请使用带双引号的不区分大小写排序规则,只需执行$query=“select*from users.data”,其中username='$user';
if($_POST)
{
if(isset($_POST['user']))
{
$user= strtolower(sanitizeString($_POST['user']));
$query="select * from users.data where username='".$user."'";
$result= mysql_query($query);
if(mysql_num_rows($result)==0)
{
echo '<font color="green">Username is Available</font><br>';
}
else
{
echo '<font color="red">Username is already taken. Please select another username.</font><br>';
echo '<script language="javascript">var user=document.getElementById("user");'
. 'user.value="";</script>';
}
}
}