- 初期値の設定:
フォームの各入力要素には、初期値を設定することができます。これにより、ユーザーがフォームを送信しても値がクリアされないようになります。例えば、テキスト入力フィールドには、
value
属性を使用して初期値を指定します。
<input type="text" name="username" value="<?php echo isset($_POST['username']) ? $_POST['username'] : ''; ?>">
上記の例では、$_POST['username']
が存在する場合はその値を表示し、存在しない場合は空の文字列を表示します。
- セッションを使用する: PHPのセッションを使用して、フォームの値を保持することもできます。セッションは、サーバー側にデータを保存する仕組みです。以下の例では、セッションを使用してフォームの値を保持します。
session_start();
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
$_SESSION['username'] = $_POST['username'];
} else {
$_SESSION['username'] = '';
}
// フォームの値を表示する場合
<input type="text" name="username" value="<?php echo $_SESSION['username']; ?>">
上記の例では、$_SESSION['username']
にPOSTされた値を保存します。フォームの値を表示する際には、$_SESSION['username']
を使用します。
- クッキーを使用する: PHPのクッキーを使用して、フォームの値を保持することもできます。クッキーは、ユーザーのブラウザにデータを保存する仕組みです。以下の例では、クッキーを使用してフォームの値を保持します。
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
setcookie('username', $_POST['username']);
} else {
setcookie('username', '', time() - 3600);
}
// フォームの値を表示する場合
<input type="text" name="username" value="<?php echo isset($_COOKIE['username']) ? $_COOKIE['username'] : ''; ?>">
上記の例では、setcookie()
関数を使用してクッキーに値を保存します。フォームの値を表示する際には、$_COOKIE['username']
を使用します。
これらの方法を使用することで、PHPでフォームの値を保持することができます。適切な方法を選択し、フォームの値が保持されるようにコードを実装してください。