我正在尝试创建一个注册页面。我按照指南但它的错误和我在运行它时出现了一个空白屏幕。我想我可能误解了一些代码。任何帮助将不胜感激。
<?php
if (isset($_POST['register'])){
if (empty($_POST['email']) &&
(empty($_POST['username']) &&
(empty($_POST['password']) &&
(empty($_POST['re-enter']) &&
(empty($_POST['title']) &&
(empty($_POST['first name']) &&
(empty($_POST['second name']) &&
(empty($_POST['address']) &&
(empty($_POST['postcode']) &&
(empty($_POST['contactnumber'])){
$email=$_POST['email'];
$username=$_POST['username'];
$password=$_POST[['password'];
$reenter=$_POST['re-enter'];
$title=$_POST['title'];
$firstname=$_POST['firstname'];
$secondname=$_POST['secondname'];
$address=$_POST['address'];
$postcode=$_POST['postcode'];
$contactnum=$_POST['contactnumber'];
if ($password == $reenter) {
$conn = mysqli_connect('127.0.0.1', 'i7266***', 'Winter****', 'i72*****');
$emailquery = "SELECT * FROM UserTable WHERE email = '$email'";
$r = mysqli_query($conn, $emailquery);
$count = mysqli_num_rows($r);
if ($count == 1) {
echo "Email already exists";
} else {
$query = "INSERT INTO UserTable VALUES ('$username', '$password', '$email', '$title', '$firstname', '$secondname', '$address', '$postcode', '$contactnum')";
$run = mysqli_query($conn, $query);
echo "Customer account has been created";
}
} else {
echo "Passwords did not match";
}
} else {
echo "please enter your details to register";
}
}else {
echo "Please enter details to register";
}
?>
<form method="POST" action="">
Email:
<input type="email" name="email"><br>
Username:
<input type="text" name="username"><br>
Password:
<input type="password" name="password"><br>
Re-enter password:
<input type="password" name="re-enter"><br>
Title:
<input type="text" name="title"><br>
First name:
<input type="text" name="firstname"><br>
Second name:
<input type="text" name="secondname"><br>
Address
<input type="text" name="address"><br>
Postcode:
<input type="text" name="postcode"><br>
Contact number
<input type="number" name="contactnumber"><br>
<br>
<input type="submit" name="register" value="Register">
答案 0 :(得分:1)
您没有关闭&#39;()&#39;在第二次,如果在所有评估中,你还有一个这样的&#39; [&#39;在$password=$_POST[['password']
;
试试这个:
<?php
if (isset($_POST['register'])){
if ((empty($_POST['email'])) &&
(empty($_POST['username'])) &&
(empty($_POST['password'])) &&
(empty($_POST['re-enter'])) &&
(empty($_POST['title'])) &&
(empty($_POST['first name'])) &&
(empty($_POST['second name'])) &&
(empty($_POST['address'])) &&
(empty($_POST['postcode'])) &&
(empty($_POST['contactnumber']))){
$email=$_POST['email'];
$username=$_POST['username'];
$password=$_POST['password'];
$reenter=$_POST['re-enter'];
$title=$_POST['title'];
$firstname=$_POST['firstname'];
$secondname=$_POST['secondname'];
$address=$_POST['address'];
$postcode=$_POST['postcode'];
$contactnum=$_POST['contactnumber'];
if ($password == $reenter) {
$conn = mysqli_connect('127.0.0.1', 'i7266***', 'Winter****', 'i72*****');
$emailquery = "SELECT * FROM UserTable WHERE email = '$email'";
$r = mysqli_query($conn, $emailquery);
$count = mysqli_num_rows($r);
if ($count == 1) {
echo "Email already exists";
} else {
$query = "INSERT INTO UserTable VALUES ('$username', '$password', '$email', '$title', '$firstname', '$secondname', '$address', '$postcode', '$contactnum')";
$run = mysqli_query($conn, $query);
echo "Customer account has been created";
}
} else {
echo "Passwords did not match";
}
} else {
echo "please enter your details to register";
}
}else {
echo "Please enter details to register";
}
?>
<form method="POST" action="">
Email:
<input type="email" name="email"><br>
Username:
<input type="text" name="username"><br>
Password:
<input type="password" name="password"><br>
Re-enter password:
<input type="password" name="re-enter"><br>
Title:
<input type="text" name="title"><br>
First name:
<input type="text" name="firstname"><br>
Second name:
<input type="text" name="secondname"><br>
Address
<input type="text" name="address"><br>
Postcode:
<input type="text" name="postcode"><br>
Contact number
<input type="number" name="contactnumber"><br>
<br>
<input type="submit" name="register" value="Register">
希望对你有用。
现在语法很好,但逻辑是错误的,因为@Niet,Dark Absol说:只有当所有形式都为空时才处理表格。