2

私は本当の問題を抱えており、それは構文の問題です。通常、ページをリダイレクトする必要がある場合は、ヘッダー関数を使用します。以下のように必要なときに変数を使用することがあります。

if(condition) header("Location: home.php?wrong=1");

次のような場合もあります。

if(condition) header("Location: home.php?wrong=1&&success=2");

変数を直接使用しても問題ありません(失敗または成功)。そして、post メソッドを介して html フォームから値をリダイレクトする必要がある場合は、このコードを使用すると機能します。

if (condition) header("Location: home.php?id=".$_POST['topic_id']);

しかし、もっと必要です。別の値も渡す必要があります。だから私は使用します:

if (condition) header("Location: home.php?id=".$_POST['topic_id']&&wrong=1);

そして今度は私はばかになります。適切な構文を提供することで、誰かが私を助けることができますか? WRONG=1 部分も渡す必要があります。

4

3 に答える 3

5

必要なもの:

if (condition) header("Location: home.php?id=" . $_POST['topic_id'] . "&wrong=1");

また

if (condition) header("Location: home.php?id={$_POST['topic_id']}&wrong=1");
于 2012-12-18T21:17:20.583 に答える
1

場合によってはそうなる可能性があります

if (condition) {
  $_SESSION['error']['topicId'] = $_POST['topic_id'];
  $_SESSION['error']['otherData'] = array('sadfasdfasdfasd' => 'adsfasdf');
  header("Location: home.php?wrong=1");
  exit;
}

その後:

//home.php
if (!empty($_SESSION['error'])) {
  $topicId = $_SESSION['error']['topicId'];
  //... do someth ...
}
于 2012-12-18T21:23:33.433 に答える
0

PHP ヘッダー関数に問題がある場合は、スクリプトの HTML 出力で更新メタ タグを出力できることに注意してください。

<meta http-equiv="refresh" content="0;url=http://yoursite.com/thepath/you/want/file.php?parames=anything">

これは、メタ リフレッシュ タグに関するリソースです。

http://webdesign.about.com/od/metataglibraries/a/aa080300a.htm

于 2012-12-18T21:25:53.700 に答える