Javascript 我正在尝试使用验证创建此登录/注册表单
我的代码中出现了某种php错误,但我不确定它是什么 我的代码开始变得有趣,在最后当你到达底部php。我正在尝试验证用户名和密码,但我遇到了一些类型的错误Javascript 我正在尝试使用验证创建此登录/注册表单,javascript,php,html,css,mysql,Javascript,Php,Html,Css,Mysql,我的代码中出现了某种php错误,但我不确定它是什么 我的代码开始变得有趣,在最后当你到达底部php。我正在尝试验证用户名和密码,但我遇到了一些类型的错误 <?php include 'config.php'; ?> <!DOCTYPE html> <html> <head> <title>Register Page</title> <li
<?php
include 'config.php';
?>
<!DOCTYPE html>
<html>
<head>
<title>Register Page</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
<div id="main-wrapper">
<center>
<h2 style="color: white;">Register Page</h2>
<img class="avatar" src="spaceman2.jpg" style="height: 100px; width: 100px" />
</center>
<form class="my-form" action="register.php" method="post">
<label><b>Username<b></label>
<input name="username" type="text" class="input-values" placeholder="Your username" required/>
<label><b>Password<b></label>
<input name="password" type="password" class="input-values" placeholder="Your password" required/>
<label><b>Confirm Password<b></label>
<input name="cpassword" type="password" class="input-values" placeholder="Confirm password" required/>
<input name="signup_btn" id="signup-btn" type="submit" value="Sign Up"/>
<br/>
<a href="login.php"><input id="back-btn" type="button" value="<- Back"/></a>
</form>
<?php
if(isset($_POST['signup_btn']))
{
//echo '<script type="text/javascript"> alert("You are now signed in!")</script>';
$username = $_POST['username'];
$password = $_POST['password'];
$cpassword = $_POST['password'];
if($password == $cpassword)
{
$query= "SELECT * FROM user WHERE username ='$username'";
$query_run = mysqli_query($con,$query);
if(mysqli_num_rows($query_run)>0)
{
echo '<script type="text/javascript"> alert("Astronaut name already exist") </script>';
}
{
$query= "insert into user values('$username','$password')";
$query_run = mysqli_query($con, $query);
if($query_run)
{
echo '<script type="text/javascript"> alert("Astronaut is now registered! Go to Login Page!") </script>';
}
else
{
echo '<script type="text/javascript"> alert("Error!") </script>';
}
}
?>
注册页
注册页
用户名
密码
确认密码
有几件事:
您的$cpassword引用的是您的$\u POST['password',而不是cpassword
insert语句缺少值之前的列引用
您还应该考虑一些密码散列/加密。
您的代码由于有错误。
特别是在php中
您忘记了else
,并且使用了密码
作为$cpasswrod
在html
中,您不会关闭
这是您的代码的新版本:(试试看)
注册页
注册页
用户名
密码
确认密码
错误到底是什么?编辑您的问题并添加错误消息的完整文本。另外,显示导致错误的代码行(因为问题不显示行号),请不要直接存储密码。PHP有一个散列密码的功能,因此如果您的数据库被破坏,黑客将无法获得实际密码。警告:编写自己的访问控制层并不容易,而且有很多机会使其严重出错。请不要编写您自己的身份验证系统,因为任何现代的同类产品都具有强大的内置功能。至少要遵循并永远不要将密码存储为纯文本或弱散列(如SHA1或MD5)。警告:使用mysqli
时,您应该使用and将用户数据添加到查询中。不要使用字符串插值或串联来完成此操作,因为您已经创建了严重的错误。千万不要将$\u POST
、$\u GET
或任何用户数据直接放入查询中,如果有人试图利用你的错误,这可能是非常有害的。这只是冰山一角。
<?php
include 'config.php';
if(isset($_POST['signup_btn']))
{
//echo '<script type="text/javascript"> alert("You are now signed in!")</script>';
$username = $_POST['username'];
$password = $_POST['password'];
$cpassword = $_POST['cpassword'];
if($password == $cpassword){
$query= "SELECT * FROM user WHERE username ='$username'";
$query_run = mysqli_query($con,$query);
if(mysqli_num_rows($query_run)>0)
{
echo '<script type="text/javascript"> alert("Astronaut name already exist") </script>';
}
else{
$query= "insert into user values('$username','$password')";
$query_run = mysqli_query($con, $query);
if($query_run)
{
echo '<script type="text/javascript"> alert("Astronaut is now registered! Go to Login Page!") </script>';
}
else
{
echo '<script type="text/javascript"> alert("Error!") </script>';
}
}
}
}
?>
<html>
<head>
<title>Register Page</title>
<link rel="stylesheet" href="style.css" />
</head>
<body>
<div id="main-wrapper">
<center>
<h2 style="color: white;">Register Page</h2>
<img class="avatar" src="spaceman2.jpg" style="height: 100px; width: 100px" />
</center>
<form class="my-form" action="index.php" method="post">
<label><b>Username</b></label>
<input name="username" type="text" class="input-values" placeholder="Your username" required/>
<label><b>Password</b></label>
<input name="password" type="password" class="input-values" placeholder="Your password" required/>
<label><b>Confirm Password</b></label>
<input name="cpassword" type="password" class="input-values" placeholder="Confirm password" required/>
<input name="signup_btn" id="signup-btn" type="submit" value="Sign Up"/>
<br/>
<a href="login.php"><input id="back-btn" type="button" value="<- Back"/></a>
</form>
</div>
</body>
</html>
<?php
include 'config.php';
?>
<!DOCTYPE html>
<html>
<head>
<title>Register Page</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
<div id="main-wrapper">
<center>
<h2 style="color: white;">Register Page</h2>
<img class="avatar" src="spaceman2.jpg" style="height: 100px; width: 100px" />
</center>
<form class="my-form" action="register.php" method="post">
<label><b>Username</b></label>
<input name="username" type="text" class="input-values" placeholder="Your username" required />
<label><b>Password</b></label>
<input name="password" type="password" class="input-values" placeholder="Your password" required />
<label><b>Confirm Password</b></label>
<input name="cpassword" type="password" class="input-values" placeholder="Confirm password" required />
<input name="signup_btn" id="signup-btn" type="submit" value="Sign Up"/>
<br/>
<a href="login.php"><input id="back-btn" type="button" value="<- Back"/></a>
</form>
<?php
if(isset($_POST['signup_btn']))
{
//echo '<script type="text/javascript"> alert("You are now signed in!")</script>';
$username = $_POST['username'];
$password = $_POST['password'];
$cpassword = $_POST['cpassword'];
if($password == $cpassword)
{
$query= "SELECT * FROM user WHERE username ='$username'";
$query_run = mysqli_query($con,$query);
if(mysqli_num_rows($query_run)>0)
{
echo '<script type="text/javascript"> alert("Astronaut name already exist") </script>';
}else
{
$query= "insert into user (username, password) values('$username','$password')";
$query_run = mysqli_query($con, $query);
if($query_run)
{
echo '<script type="text/javascript"> alert("Astronaut is now registered! Go to Login Page!") </script>';
}
else
{
echo '<script type="text/javascript"> alert("Error!") </script>';
}
}
}
}
?>
</div>
</body>
</html>