PhP 및 MySQL을 사용하여 로그인/등록 시스템을 만드는 방법에 대한 좋은 자습서를 찾았습니다. 포럼은 약 5 년 전 (작년에 편집 됨)이지만 여전히 유용 할 수 있습니다.PhP 로그인/등록 시스템
Beginner Simple Register-Login system
는 모두 로그인에 문제가 될 수 및 페이지를 등록하는 것 같다.
<?php
function register_form(){
$date = date('D, M, Y');
echo "<form action='?act=register' method='post'>"
."Username: <input type='text' name='username' size='30'><br>"
."Password: <input type='password' name='password' size='30'><br>"
."Confirm your password: <input type='password' name='password_conf' size='30'><br>"
."Email: <input type='text' name='email' size='30'><br>"
."<input type='hidden' name='date' value='$date'>"
."<input type='submit' value='Register'>"
."</form>";
}
function register(){
$connect = mysql_connect("host", "username", "password");
if(!$connect){
die(mysql_error());
}
$select_db = mysql_select_db("database", $connect);
if(!$select_db){
die(mysql_error());
}
$username = $_REQUEST['username'];
$password = $_REQUEST['password'];
$pass_conf = $_REQUEST['password_conf'];
$email = $_REQUEST['email'];
$date = $_REQUEST['date'];
if(empty($username)){
die("Please enter your username!<br>");
}
if(empty($password)){
die("Please enter your password!<br>");
}
if(empty($pass_conf)){
die("Please confirm your password!<br>");
}
if(empty($email)){
die("Please enter your email!");
}
$user_check = mysql_query("SELECT username FROM users WHERE username='$username'");
$do_user_check = mysql_num_rows($user_check);
$email_check = mysql_query("SELECT email FROM users WHERE email='$email'");
$do_email_check = mysql_num_rows($email_check);
if($do_user_check > 0){
die("Username is already in use!<br>");
}
if($do_email_check > 0){
die("Email is already in use!");
}
if($password != $pass_conf){
die("Passwords don't match!");
}
$insert = mysql_query("INSERT INTO users (username, password, email) VALUES ('$username', '$password', '$email')");
if(!$insert){
die("There's little problem: ".mysql_error());
}
echo $username.", you are now registered. Thank you!<br><a href=login.php>Login</a> | <a href=index.php>Index</a>";
}
switch($act){
default;
register_form();
break;
case "register";
register();
break;
}
?>
일단 페이지가 아무것도하지 않는다 등록 버튼을 누르면 필드는 삭제하고 데이터가 주어진 데이터베이스 또는 오류 내부에 추가되지 않습니다. 나는 그것을 제거 할 수 있도록 문제가
switch($act){
일부가 될 수 있음을 문질러서 및 사용하여 페이지를 바꾼
require
require('connect.php');
connect.php가로 선회
function register_form(){
및
echo
부분을 제거
<?php
mysql_connect("localhost","host","password");
mysql_select_db("database");
?>
입니다
HTML 코드 :
<form action='register' method='post'>
Username: <input type='text' name='username' size='30'><br>
Password: <input type='password' name='password' size='30'><br>
Confirm your password: <input type='password' name='password_conf' size='30'><br>
Email: <input type='text' name='email' size='30'><br>
<input type='hidden' name='date' value='$date'>
<input type='submit' name="register" value='Register'>
</form>
function register(){
if($register){
등록 단추를 누르면 PHP 코드가 실행되지만이 편집도 작동하지 않는 것 같습니다. 문제는 무엇이 될 수 있습니까? 필요한 경우 내 도메인에이 코드를 다시 추가 할 수 있습니다.
로그인 페이지에 동일한 문제가 있으며 입력란을 비우기 옆에있는 버튼을 누르면 아무 일도 발생하지 않습니다.
양식 작업은 register가 아닌 register.php가되어야합니다.
로그인 시스템을 찾는 사람에게주는주의 사항 : 게시 된 코드에는 많은 문제점이 있습니다. 고민하지 마세요. – outis