3

大丈夫みんな..

私は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つの質問があります

  1. フォームが複数のタブで開かれている場合、セッションが問題になる可能性があり、セッションが台無しになる可能性があると人々から言われました。そのため、代わりに get を使用するよう提案されました。このステートメントが有効である場合、get またはおそらくより良い方法でそれを達成するための PHP コードの変更はどこにありますか?
  2. このコードが get 経由で動作しないように変更されているかどうかに関係なく、ユーザーがページ 2 の編集ボタンをクリックした場合、このフォームをページ 1 にリダイレクトするにはどうすればよいですか? # と EDIT ボタンを参照してください。どうすれば達成できますか?

助けてくれた友達に感謝します。

4

2 に答える 2

2

クエリ文字列を使用してデータを送信し、header関数で ID などを送信できます。

header('Location: form1_conf.php?id='.$id);

または、リンクなどの他の場所:

www.example.com/page2.php?id=445

$_GET次に、受信側で、配列を使用してデータを取得できます。

if (isset($_GET['id'])){
    $id = $_GET['id'];
}

URL を使用して編集リンクを変更することもできます。

<a href="http://www.example.com/page1.php?id=<?php echo $id; ?>" class="button">EDIT</a>
于 2013-07-29T06:49:38.410 に答える