• 締切済み

条件を満たしたら、別のページに飛ばしたい

質問させていただきます フォームからもらった値を調べ、条件が成立したら 別のページに飛ばす、ということは可能でしょうか? ↓ソースの一部です if($_GET['pass']=="pass") {  ※↓下記のjavascriptの部分をphpで再現したい echo ' <script language="javascript"> window.location.replace("test.php"); </script>'; } どなたかご教授のほどお願いいたします

  • PHP
  • 回答数2
  • ありがとう数2

みんなの回答

回答No.2

補足です。header関数によるリダイレクトの場合、相対URLではなく絶対URLにした方が無難です。確かRFCでは絶対URLでなければいけないと定義されてた気がします(確認して下さい)。実際には携帯端末の一部で絶対URLでないと正常にリダイレクトできないものがあります。

  • unimentai
  • ベストアンサー率70% (34/48)
回答No.1

ご希望の機能はheader関数を利用し、リダイレクトをかける事で可能です。 if ( $_GET["pass"] == "pass" ) { header("LOCATION: test.php" ); } 詳しくは以下参照ページをご確認下さい。

参考URL:
http://php.s3.to/man/function.header.html

関連するQ&A

  • Safariを判別し別ページに飛ばすには

    javascriptでブラウザを判別して、ブラウザによって違うページに飛ばしています。 基本的にはIEとそれ以外なのですが、Safariだけが別ページに飛んでくれません。(index.htmlにいたままになる) 下記のようにしていますが、どうすれば飛ぶようになるでしょうか? よろしくお願いします。 <script type="text/javascript"> if(navigator.userAgent.indexOf("MSIE") != -1){ window.location.href = "index.html";}     : else if(navigator.userAgent.indexOf("safari") != -1){ window.location.href = "index2.html";} </script>

  • パスワード認証ページ作りたい(basic認証でない)

    フリーのものを使ってパスワード認証ページ(basic認証でない)を作ろうとしています。しかし、うまく動いてくれません…何がいけないのでしょうか?どうかご教授下さい。ちなみにここのサンプルです。 http://www.jetman.jp/passwd.php <?php $user_pass = "test"; $ok = "ok.htm"; $error = "error.htm"; $script = "login.php"; $doc_title = "テスト"; if(!isset($ver)) { $ver = '1.05.1'; } if(!isset($pass)) { $pass = $user_pass; // パスを指定 if($passwd == $pass) { header("Location: $ok"); // OKなら } elseif($passwd) { header("Location: $error"); // NGなら } } ?> <html> <head> <title><?php echo $doc_title; ?></title> <meta http-equiv="Content-Type" content="text/html;Charset=Shift_JIS"> <script type="text/javascript"> <!-- function check() { if(document.formxx.passwd.value.length == 0) { alert("パスワードが入力されてません"); return false; } return true; } //--> </script> </head> <body> <h3><?php echo $doc_title; ?></h3> <form action="<?php echo $script; ?>" method="post" name="formxx"> <input type="password" name="passwd" size="15"> <input type="submit" value=" login " onClick="check()"> <form> <p style="font-size:10px"><a href="http://www.jetman.jp/">プチログイン version:<? echo $ver; ?></a></p> </body> </html>

    • ベストアンサー
    • PHP
  • JavaScriptでページを一度だけリロード

    とあるページにアクセスした際、JavaScript(jQuery)を使って一度だけページをリロードしたいと思っております。 <script language="JavaScript"><!-- function reload() { if (window.name != "test") { location.reload(); window.name = "test"; } } // --></script> 上記のような記述で試みたのですが、リロードしてくれません。 他に対応できる方法がございましたら、ご教授いただけますと幸いです。 以上、よろしくお願い致します。

  • javaScriptでのクエリー文字の取得

    お世話になります。 PHPを使ってjavaScriptで書かれたページを生成しています。 デバッグ中、 このjavaScriptを書き換えても、 ページがキャッシュされてしまい、 書き換えたとおりに動かないことがあります。 これを回避する方法として、 javaScriptにクエリー文字を渡すと、 キャッシュを回避できるという方法があるようです。 参考サイト  http://wisdomtrees.net/?p=10 http://billyboy.blog81.fc2.com/blog-entry-183.html これらを真似て、 PHPでクエリー値が動的に変わるようにしようとしているのですが、うまくいきません。 以下、呼び出し元のPHPと呼び出し先のjavascriptのソースです。 ●test.php <?php echo "<script type='text/javascript' src='test.js?time=".time()."'></script>"; ?> ●test.js document.write("### loading time is "+getQuerystring('time')); function getQuerystring(key, default_) {  if (default_==null) { default_=""; key = key.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]"); var regex = new RegExp("[\\?&]"+key+"=([^&#]*)"); var qs = regex.exec(window.location.href); if(qs == null){ return default_; }else { return qs[1]; } } } test.jsの1行目では、 クエリー文字が渡っているかどうか表示しているのですが、 動かしてみると何も表示されません。 表示されない原因としては、window.location.hrefが、 test.php(呼び出し元)を指しているためなのですが、 では、test.jsとしてクエリー文字を処理するには、 どうしたらよいのでしょうか? よい方法があれば教えていただければと思います。 よろしくお願いします。

  • フレーム内リンクを禁止したい

    表題のとおり、フレーム内へのリンクを禁止したく <script language="JavaScript"> <!-- if (parent.location.href != window.location.href) parent.location.href= window.location.href; //--> </script> を<head>と</head>の間に入れてみましたが、「書き込みができません。」とエラーになります。 どこか間違っているのでしょうか。

  • 画像切り換えでTransitionをかけたい。

    フリーソースでの応用なのですが 次のJavaScriptで画像の自動切り換え表示に Transitionをかけたいのですが、知識がなくてわかりません。 アドバイスをお願いいたします。 <SCRIPT LANGUAGE="JavaScript"> <!-- var num = 1; function timer () { if(document.img.complete) { document.img.src = "photo" + num + ".jpg"; num++; if(num > 5) num = 1; } setTimeout("timer()", 1000); } //--> </SCRIPT> <SCRIPT LANGUAGE="JavaScript"> function viewSource(){ location = "view-source:" + window.location; } </SCRIPT> ----------- <BODY onload="setTimeout('timer()', 2000);"> <IMG SRC="photo1.jpg" NAME="img"> -----------

  • ここから別窓に・・・・

    いつもお世話になっています。 このスクリプトについてです。 <SCRIPT LANGUAGE="JavaScript"> <!-- function kakunin(){ quest=confirm("表示します。\nいいですか?"); if(quest==true){ location.href="http://www.goo.ne.jp/"; }else{ location.href="http://www.goo.ne.jp/"; } } //--> </SCRIPT> 表示されるページを別窓で開くには、どのように書き換えればよいのか教えて下さい。

  • ページ更新後も保持される変数の利用について

    初めての質問です。よろしかったらお答えください。 複数のインラインフレーム用ページが用意してあり、 テキストボックスに入力した番号によって 任意のページから10個のインラインフレームを順番に配置するようにしたいのです。 ここを参考に作ったのですがうまくいきません。 http://okwave.jp/qa4019868.html <html> <head> <script language="javascript"> <!-- function init(){ var queries=location.search; if(queries){ var q = queries.replace(/^\?/,'').split('='); n = eval(q[1]); } alert(n); } window.onload= init; // --> </script> </head> <body> <form action="index.htm" method="get"> <input name="number" type="text" value=""> <input type="submit"> </form> <script language="javascript"> <!-- for(i=1 ; i<=10; i++) { document.write("<iframe src='"+n+".htm'>"); n++; } //--> </script> </body> </html> 根本的な所から間違っているのでしょうか?

  • フレームページでアクセス制限したい場合

    ある特定のURLからのアクセスを、どこかのページに飛ばすには、 <Script Language="JavaScript"> <!-- reff=document.referrer; if(reff.indexOf('相手のURL')!=-1){ location.replace('飛ばす先のURL') } //--> </Script> なのですが、 フレームページの<body>と</body>の間に設置したところ、 飛ばすことが出来ず、普通に表示されてしまいます。 この場合どうすれば、いいのでしょうか? ご意見頂けましたら幸いです。

  • ブラウザが判別出来ない。

    お世話になっております。 JavaScriptの本を購入しました。 その本にブラウザ判定のスクリプトが掲載されており、それをそのままアップしたところ、私はIE6なのにIE4と判別されてしまいました。 下記がそのスクリプトです。 ちなみに、私はXPのIE6です。 このスクリプトはこれで完璧なのでしょか? また、出来ましたら、このスクリプトを試していただけたらと思うのですが・・・よろしくお願い致します。 <script language="JavaScript"> <!-- if( navigator.appVersion.charAt(0)==4){window.location.href = "nn4.html"} // NN Ver4 の場合 if( navigator.appVersion.charAt(0)==5){window.location.href = "nn5.html"} // NN Ver5 の場合 if( navigator.appVersion.charAt(0)==6){window.location.href = "nn6.html"} // NN Ver6 の場合 } if( navigator.appName.charAt(0)=="M"){ if( navigator.appVersion.charAt(0)==2){window.location.href = "ie2.html"} // IE Ver2 の場合 if( navigator.appVersion.charAt(0)==3){window.location.href = "ie3.html"} // IE Ver3 の場合 if( navigator.appVersion.charAt(0)==4){window.location.href = "ie4.html"} // IE Ver4 の場合 if( navigator.appVersion.charAt(0)==5){window.location.href = "ie5.html"} // IE Ver5 の場合 if( navigator.appVersion.charAt(0)==6){window.location.href = "ie6.html"} // IE Ver6 の場合 } //--> </script> <noscript>JavaScript を使用しています。JavaScript を有効にしてください。</noscript>

専門家に質問してみよう