PHP注册页面
这里是registo.phpPHP注册页面,php,html,Php,Html,这里是registo.php <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <link rel="sty
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<link rel="stylesheet" href="assets/bootstrap/css/bootstrap.min.css">
<link rel="stylesheet" href="css/login.css">
<script src="assets/bootstrap/js/bootstrap.min.js"></script>
<script src="assets/jquery/jquery-3.2.1.js"></script>
<title>SITIO</title>
</head>
<body>
<div class="container">
<div class="logo">
<img src="images/logo_1.png">
</div>
<div class="login-form">
<form action="includes/signup.php" method="post">
<div class="form-group">
<label name="username" for="lg_username" class="sr-only">Username</label>
<input type="text" class="form-control" id="lg_username" name="username" placeholder="username">
</div>
<div class="form-group">
<label name="password"for="lg_password" class="sr-only">Password</label>
<input type="password" class="form-control" id="lg_password" name="password" placeholder="password">
</div>
<div class="form-group">
<label name="email" for="lg_email" class="sr-only">Email</label>
<input type="email" class="form-control" id="lg_email" name="email" placeholder="email">
</div>
<div class="form-group">
<button type="submit" name="signup" class="btn btn-block btn-primary">
</button>
</div>
</form>
</div>
</div>
</body>
</html>
斯提奥
用户名
密码
电子邮件
和signup.php
<?php
if(isset($_POST['signup'])){
include "db.php";
$username = $_POST['username'];
$password = $_POST['password'];
$email = $_POST['email'];
//Error handlers
//Check for empty fields
if(empty($username) || empty($password) || empty($email)){
header("Location: ../registo.php?=empty");
exit();
}else{
//Validate the email
if(!filter_var($email, FILTER_VALIDATE_EMAIL){
header("Location: ../registo.php?=signup=email");
exit();
}else{
//Check if the user already exists
$sql = "SELECT * FROM Users WHERE username='$username'";
$r = $conn->prepare($sql);
$r->execute();
$count = $r->rowCount();
if($count > 0){
header("Location: ../registo.php?=signup=usertaken");
exit();
}else{
//Hash the password
$hashedpwd = password_hash($password, PASSWORD_DEFAULT);
//Inserting the user into the database
$sql="INSERT INTO Users (username, password, email, isAdmin, company_fk) VALUES ('$username', '$hashedpwd', '$email', '0', '2')";
$r= $conn->prepare($sql);
$r->execute();
}
}
}
}else{
header("Location: ../registo.php?=empty");
exit();
}
此处缺少结束父项:
if(!filter\u var($email,filter\u VALIDATE\u email){
改为
if(!filter\u var($email,filter\u VALIDATE\u email)){
我强烈建议您使用IDE或linter。我已将您的代码复制并粘贴到我的编辑器()中,并立即检测到错误。语法错误肯定会导致服务器端出现该错误。此处缺少关闭父项:
if(!filter\u var($email,filter\u VALIDATE\u email){
改为
if(!filter\u var($email,filter\u VALIDATE\u email)){
我强烈建议您使用IDE或linter。我将您的代码复制并粘贴到我的编辑器()并立即检测到错误。语法错误肯定会导致服务器端出现错误。您的脚本有可能查看甚至在使用过程中发生的情况。500个错误在服务器端,通常没有意义,因此您需要查看服务器日志,以找到您将在问题中发布的确切消息查找方法为您的环境启用PHP错误。您可以在htaccess文件、ini文件或代码中执行此操作,我相信还有其他方法。因此,您会说PHP中没有任何错误,这很可能是服务器端问题吗?您的脚本甚至有可能查看使用过程中发生的情况。服务器端和服务器端都有500个错误一般来说没有意义,因此您需要查看服务器日志,以找到您将在问题中发布的确切消息查找如何为您的环境启用PHP错误。您可以在htaccess文件、ini文件或代码中执行此操作,我相信还有其他方法。那么您是否会说PHP中没有错误,而且它最简单我遇到服务器端问题了吗?