1

私のphpでは、js関数を介してphp変数を持つURLをjavascript/jquery経由でリダイレクトしたいと思います。

私のjs関数

function Redirect(url){
  document.location.href=url;
} 

私のphpページでは、この方法で試してみましたが、$urlの構文に問題があるのではないかと心配しています.

if ($opz = 1){

  $url = "index.php?opz=OK#PG2&id=" . $_GET['id'];

  echo "<script>";
  echo "$(function(){ Redirect($url); });";
  echo "</script>";
}

この方法でリダイレクトしようとすると、すべてが完全に機能します (リダイレクト機能はありません)。

echo "<script>
          document.location.href='index.php?opz=OK#PG2&id=$_GET[id]'
      </script>";

js Redirect 関数を介して私のphp変数を渡すための正しい構文は何ですか? ありがとう。

4

6 に答える 6

2

に変更echo "$(function(){ Redirect($url); });";するだけ

echo "$(function(){ Redirect('$url'); });";

引用符に注意してください。URL は文字列として Redirect 関数に渡されます。したがって、単一引用符で囲みます。お気に入りRedirect('$url');

于 2013-09-17T08:40:32.357 に答える
2

あなたの問題は簡単です:

  echo "$(function(){ Redirect($url); });";

に置き換える必要があります

  echo "$(function(){ Redirect('$url'); });";
于 2013-09-17T08:39:05.840 に答える
1

JavaScript を使用して Web ページをリダイレクトしようとしている理由。

PHPでもできます。PHPheader()関数を使用してページをリダイレクトします。

if ($opz = 1){

  $url = "index.php?opz=OK#PG2&id=" . $_GET['id'];

  header("Location:".$url);
}
于 2013-09-17T08:35:12.757 に答える
0

この問題は、生成されたHTMLが次のようになっているために発生します。

Redirect(index.php?opz=.....);

ご覧のとおり、引用符がありません。

PHP から JavaScript に変数を入れるには、私はいつもjson_encode. これにより、何を渡しても、JavaScript は同じものを見ることが保証されます。引用、エスケープ、さらには配列やオブジェクトの反復も処理します。

于 2013-09-17T08:38:20.070 に答える
0

生成されているJavascriptコードがOKであると仮定して試してくださいwindow.location

于 2013-09-17T08:35:22.623 に答える
0

以下のようにしてみてください

if ($opz = 1){
 $param = 'opz='.urlencode("OK#PG2").'&id='.$_GET['id'];

$url = "index.php?".$param;

echo "<script>";
echo "$(function(){ Redirect($url); });";
echo "</script>";
}

urldecode();を使用してopzを取得します。

于 2013-09-17T08:35:28.263 に答える