PHP と MySQL でユーザー登録を作成する方法を理解しようとしています。
ユーザーが入力できるフォームを作成すると、情報がテーブルに保存されます。
error_reporting(E_ALL);
include_once ('connection.php');
// Required field names
$required = array('firstname', 'lastname', 'email', 'password', 'accounttype');
// Loop over field names, make sure each one exists and is not empty
$error = false;
foreach($required as $field) {
if (empty($_POST[$field])) {
$error = true;
}
}
if ($error) {
echo "All fields are required.";
} else {
$firstname = $_POST['firstname'];
$lastname = $_POST['lastname'];
$email = $_POST['email'];
$password = md5($_POST['password']);
$accounttype = $_POST['accounttype'];
$query = "INSERT INTO users(firstname,lastname,email,password,accounttype) VALUES (:firstname,:lastname,:email,:password,:accounttype)";
$stmt = $dbh->prepare($query);
$stmt->bindParam(':firstname', $firstname);
$stmt->bindParam(':lastname', $lastname);
$stmt->bindParam(':email', $email);
$stmt->bindParam(':password', $password);
$stmt->bindParam(':accounttype', $accounttype);
$stmt->execute();
if(!$query){
echo 'Whoops, something went wrong!';
} else {
echo $accounttype;
if($accounttype == '1'){
header ('Location: /england/dashboard.php');
exit;
};
if($accounttype == '2'){
header ('Location: /ireland/dashboard.php');
exit;
};
};
};
ユーザーがフォームを完了すると、アカウントの種類に基づいて別のページにリダイレクトされます。
これらのページでは、ユーザーのアカウント タイプが「X」であるかどうかを確認する必要があります。彼らが着陸した場合
header ('Location: /ireland/dashboard.php');
アカウント タイプの値は 2 に等しいため、アカウント タイプが 2 のユーザーのみが上記にアクセスできます。
セッション変数について読んだことがありますが、これらはどこで設定すればよいですか?