3

PHP mysql_insert_id ヘッダー、location メソッドを使用して、あるページから別のページへのデータ転送の試行を正常に実装しました。私がしたことは:

私はそれを検証し(フォームを同じページに転送(フォームアクション)します)、データベースに保存し、別のページにデータを表示しようとしています。

page1 (元のフォームがある場所)

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

そしてページ2で

$id = $_GET['id'];
$query  = "SELECT * FROM form1 WHERE id=$id";
{
 // there after display of data
}

私が直面した問題:

タイトルバーにこのリンクを取得しています

http://localhost/aaa/page2.php?id=76

id= 56 または 45 またはその他を変更しようとすると、表示されたデータがその ID に変更されます。そのため、どのユーザーもアドレスバーで変更できるため、db 値を表示できます。

最初にエンコードすることを考え、次にセッションに変更することを考えました。

だから私はグーグルでたくさん検索してセッションとして設定し、これを試しました

<?php 
// Starting the session 
session_start();

if(isset($_SESSION['id'])) //and is this use of id correct?
{ // then what?
}

助けてくれてありがとう

4

2 に答える 2

0

page1.php:

<form action="post" action="page2.php">
       <input name="name" type="hidden" value="<?=mysql_insert_id();?>"></input>
</form>

page2.php:

<?php
  $id = $_POST['name'];
  $query  = "SELECT * FROM form1 WHERE id=$id";
?>
于 2013-03-13T10:17:04.517 に答える