同じフォームに登録フォームとログインフォームの両方を配置します。
両方とも次で始まります:
if (!empty($_POST)) ...
だから、私は次のようなものが必要です:
if (!empty($_POST_01))... // regForm
and
if (!empty($_POST_02))... //loginForm
また、2番目のフォームがビジーの場合に最初のフォームが実行されないようにする方法、およびその逆(ユーザーが両方をクリックする)
私の考えは、プロセスの開始時に単純な変数、たとえば$x = 1
およびプロセスの最後に$x = 0
、 そう:
if ((!empty($_POST_01)) And $x = 0)...
おそらく、もっと良い方法があります。
2つの異なるアクションで2つのフォームを作成できます
<form action="login.php" method="post">
<input type="text" name="user">
<input type="password" name="password">
<input type="submit" value="Login">
</form>
<br />
<form action="register.php" method="post">
<input type="text" name="user">
<input type="password" name="password">
<input type="submit" value="Register">
</form>
またはこれを行う
<form action="doStuff.php" method="post">
<input type="text" name="user">
<input type="password" name="password">
<input type="hidden" name="action" value="login">
<input type="submit" value="Login">
</form>
<br />
<form action="doStuff.php" method="post">
<input type="text" name="user">
<input type="password" name="password">
<input type="hidden" name="action" value="register">
<input type="submit" value="Register">
</form>
次に、PHPファイルはswitch($ _ POST ['action'])として機能します... ...さらに、両方のリンクを同時にクリックしたり、同時にリクエストしたりすることはできません。各送信は個別のリクエストです。
あなたのPHPは、スイッチロジックを続行するか、ログイン手順を実行してから登録手順を実行する別のphpファイルを作成します
各フォームをdifferentページに移動させることができます。 (望ましい)
または、特定の入力に対して異なる値を設定し、それに基づいて投稿します。
switch($_POST['submit']) {
case 'login':
//...
break;
case 'register':
//...
break;
}
両方のフォームの送信ボタンに異なる名前を付け、PHPを使用して、どのボタンがデータを送信したかを確認します。
フォーム1ボタン-btn1フォーム2ボタン-btn2
PHPコード:
if($_POST['btn1']){
//Login
}elseif($_POST['btn2']){
//Register
}
これがお役に立てば幸いです。ログインフォームにユーザー名とパスワードの入力があると仮定します。
if(isset($_POST['username']) && trim($_POST['username']) != "" && isset($_POST['password']) && trim($_POST['password']) != ""){
//login
} else {
//register
}
この最も簡単な方法を使用できます。
<form action="validator.php" method="post" id="form1">
<input type="text" name="user">
<input type="password" name="password">
<input type="submit" value="submit" form="form1">
</form>
<br />
<form action="validator.php" method="post" id="form2">
<input type="text" name="user">
<input type="password" name="password">
<input type="submit" value="submit" form="form2">
</form>