私は基本的なログインフォームと登録フォームを書いて、個人の詳細を含むデータベースに保存しました。filenameという名前の別の行も作成しました入力されたユーザ名.php誰かがJohnを入力した場合、ファイル名はjohn.phpとなり、ログインするたびにその特定のファイルにしか行きませんが、ログインフォームでファイル名を特定の変数に保存し、私は、ヘッダと試みた名前$ファイル名に格納されたファイルにリダイレクトすることができるように(「位置: 『$:私は、ヘッダ(』場所」)を使用login.phpのコードでPHPの変数に名前が格納されているファイルを開く方法
<?php
include('connection.php');
if(isset($_POST['login']))
{
$username = $_POST['username'];
$password = $_POST['password'];
$filename = $username.".php";
$errflag = false;
if($username == '' and $password == '') {
echo "you must enter username and password";
$errflag = true;
}
if ($errflag == false) {
SignIn($username,$password);
}
}
function SignIn($username,$password){
global $connection;
$search = $connection->prepare("SELECT * FROM users where username =
:username AND password = :password");
$search->bindParam(':username',$username);
$search->bindParam(':password',$password);
$search->execute();
$count = $search->rowCount();
if($count> 0)
{
$_SESSION['username'] = $_POST['username'];
header("Location : $filename");
}
else{
echo "wrong email or password";
}
}
?>
でログインファイル名);また、ヘッダー( "場所:$ファイル名")。しかし、それらのリターンの両方のエラー私は、変数に格納されているファイル名にリダイレクトできるように、どのような方法があるが、あなたに感謝
'$ filename'はあなたの関数のスコープでは定義されていません。 – robjingram
それを渡すようにしてくださいそれは答えです私はそれが関数でグローバルな宣言を忘れることによって間違いを犯しました –