大丈夫みんな..
私は2つのページを持っています
page1 にはフォームが含まれています
<form id="Form1" name="Form1" method="post" action="form1.php"> //form1.php is the page1 where this form is..
<input type="text" class="input" name="txtName" value="<?php if(isset($name)){echo $name;} ?>" <?php if(isset($flag) && $flag == 1){echo "div style = 'border:2px solid red;'". "/div";}?>> //HERE EVERYTHING IS GOOD
<input type="submit" name="submit" value="Submit" class="button3">
</form>
PHPセッションを使用してpage2にデータを送信します
PHPページ1コード
session_start();
if(NO ERRORS)) // in the form there is actual code
{
//insert into database
$result = mysql_query($insert);
if($result)
{
echo("<br>Input data is succeed");
$lastInsertedId = mysql_insert_id();
$_SESSION['last_id'] = $lastInsertedId;
header('Location: form1_conf.php?id');
}
else
{
$message = "The data cannot be inserted.";
$message .= "<br />" . mysql_error();
}
今ページ2が来ます
page2 の名前は form1_conf.php で、フォーム データをユーザーに表示するために使用されます。ユーザーはフォームのエラーをチェックできます。何か問題がある場合は、[編集] をクリックしてメイン フォーム (page1) に戻り、フォームを再入力できます。フォームを再送信してください。
ここにpage2コードがあります
ここでは、php を使用して page1 から次のようにデータを受け取ります。
<?php
session_start();
$id = $_SESSION['last_id'];
$query = "SELECT * FROM db_form1 WHERE id=$id";
$result = mysql_query($query);
while($row = mysql_fetch_row($result))
{
$name = $row[3];
}
?>
これを表示するためのhtmlコードは次のとおりです
<div id="DisplayForm">
<div class="dispText">
<?php echo $name; ?>
</div>
</div>
<a href="#" class="button">EDIT</a>
今、私は2つの質問があります
- フォームが複数のタブで開かれている場合、セッションが問題になる可能性があり、セッションが台無しになる可能性があると人々から言われました。そのため、代わりに get を使用するよう提案されました。このステートメントが有効である場合、get またはおそらくより良い方法でそれを達成するための PHP コードの変更はどこにありますか?
- このコードが get 経由で動作しないように変更されているかどうかに関係なく、ユーザーがページ 2 の編集ボタンをクリックした場合、このフォームをページ 1 にリダイレクトするにはどうすればよいですか? # と EDIT ボタンを参照してください。どうすれば達成できますか?
助けてくれた友達に感謝します。