나는 비밀번호 필드와 확인 비밀번호 필드가있는 등록 양식을 가지고 있습니다. 새 사용자 정보를 등록 할 수 있도록 암호 필드와 암호 필드를 동일하게 확인하고 싶습니다.등록 양식에 비밀번호 확인
형태 :
<form class="form-signin" name="Register_Form" method="post" action="regcheck.php">
<h2 class="form-signin-heading">Please sign in</h2>
<label for="inputPassword" class="sr-only">Password</label>
<input type="password" id="inputPassword" name="inputPassword" class="form-control" placeholder="Password" required>
<label for="CPassword" class="sr-only">Confirm Password</label>
<input type="password" id="CPassword" name="CPassword" class="form-control" placeholder="Confirm Password" required>
<button class="btn btn-lg btn-primary btn-block" type="reg" name="reg" value="Register">Register</button>
</form>
require_once 'connect.php';
if (isset($_POST['reg'])){
//$dob = $_POST['date'];
$dob = date('Y-m-d', strtotime($_POST['date']));
$Student_ID = $_POST['Student_ID'];
$gender = $_POST['gender'];
$course = $_POST['Course'];
$email = $_POST['inputEmail'];
$password = $_POST['inputPassword'];
$cpassword = $_POST['CPassword'];
$FN = $_POST['FirstName'];
$SN = $_POST['SecondName'];
if ($password === $cpassword) {
// success!
$sql = "INSERT INTO tblaccounts (Email, Password, Student_ID, FirstName, SecondName, Course, Gender, DoB) VALUES ('".$email."','".$password."','".$Student_ID."','".$FN."','".$SN."','".$course."','".$gender."','".$dob."')";
$result = mysqli_query($connection, $sql) or die("Database Connection Failed" . mysqli_error($connection));
//$count = mysqli_num_rows($result);
echo "Registeration Successful!:";
header('Location: login.php');
}
else {
// failed :(
}
} else {
echo "Registeration Failed!:";#
?><br/><a href ="login.php">Go back to the login screen.</a><?php
}
이 코드는 어떻게됩니까? 당신은 SQL 인젝션에 개방되어 있고, 매개 변수화되어 있습니다. 또한 암호를 해시해야하고 일반 텍스트 암호는 저장하지 않아야합니다. – chris85
@ chris85 내가 원하는대로 할 수있는 양식을 얻으려고합니다. 그런 다음 보안과 같은 작업을 할 것입니다. – helloworld999
당신의 질문은이 조건부에 관한 것입니다,'if ($ password === $ cpassword) {', not working, right? 그것은 무엇을합니까, 오류를 던지거나, 절대 일치시키지 않으며, 항상 일치 시키거나, 다른 것입니까? – chris85