
こんにちは。HTMLファイル上のText(mytext)から受け取ったデータに基づいて、特定のURLにジャンプさせる方法を探しています。
以下のようなコードを作りました。しかし、これだとエラーになります。
header("Location: ") の使い方自体に問題があるのか、それ以外に問題があるのかわかりません。
アドバイスをいただきたく、よろしくいお願いいたします。
<?php
if ($_POST['mytext'] == "google")
{
header("Location: http://google.co.jp");
}
else
{
header("Location: http://yahoo.co.jp");
}
?>
No.3ベストアンサー
- 回答日時:
なるほどですね。
エラーを見るとヘッダーが既に読み込まれていますと出ていますね。既に読み込まれているのにまたヘッダーを読み込もうとした際に出力されるエラーです。header関数を読み込む位置が間違っているだけです。どこで読み込んでいるのでしょうか?ロジックを載せていただければわかりやすいのですが。この回答への補足
レスありがとうございます。
>header関数を読み込む位置が間違っているだけです。
>どこで読み込んでいるのでしょうか?
すみません。header関数を読み込む位置というのがよくわかりません。
下に示したコードの通りです。
それともこれ以外に何か示したほうがよいものがあれば、ご教示ください。
無知ですみません。
No.5
- 回答日時:
こちらのサーバーでは問題なく動作するんですけどね・・・遷移元のロジックはどうなっていますでしょうか??
この回答への補足
遷移元のロジックと言いますと、HTMLのことでしょうか?
一応、以下のとおりです。
<html>
<head>
<title>test</title>
</head>
<body>
<form name="myform" method="post" action="header-location-new.php">
<input type="text" name="mytext">
<input type="submit" value="click">
</form>
</body>
</html>
何か問題があったらご指摘ください。
No.4
- 回答日時:
まず、<HTML></HTML>のタグ内でheader関数を記述することが間違っております。
headerで飛ばすだけならその<HTML></HTML>タグは省き、<?php
コード
?>
のみで実行してみてください。
この回答への補足
ありがとうございます。
おっしゃられたとおりに <HTML></HTML>
のタグをはずしてみましたが、やはり
headers already sent by
というメッセージが出ます。
ひょっとして、このphpに飛ばす元のHTMLの記述にも問題があるのでしょうか?
いずれにしろ、何かアドバイスがあればよろしくお願いいたします。

No.2
- 回答日時:
#1の回答と同様にエラーの内容も明記すれば原因がわかるかと思うのですが・・・
header関数の前にechoなどで出力していませんか?
header関数を使う際よく引っかかってしまう事があるのでこれが
原因では?
この回答への補足
レスありがとうございます。
以下のようなエラーが表示されます。
Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\header-location-new.php:3) in
C:\xampp\htdocs\header-location-new.php on line 7
-------------------------------
また、コードは以下のとおりです。
<html>
<?php
if ($_POST['mytext'] == "google")
{
header("Location: http://google.co.jp");
}
elseif ($_POST['mytext'] == "yahoo")
{
header("Location: http://yahoo.co.jp");
}
else
{
}
?>
</html>
何かまずい点がありましたら、ご指摘願います。
よろしくお願いします。
No.1
- 回答日時:
こんばんは。
<?php
if($_POST['mytext'] == "google"){
header("Location:http://google.co.jp");
}else{
header("Location:http://yahoo.co.jp");
}
?>
こちらでもエラーが発生するでしょうか?もしエラーが出力されましたら、その内容を教えてください。
この回答への補足
レスありがとうございます。
やはりエラーになります。
上にエラーとコードを投稿しました。
何かまずい点がありましたら。ご指摘願います。
よろしくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
PHPでfatal errorが出ても無視...
-
フォントの色を変えるには?
-
PHP8を使うと、大量のWarningが...
-
「@$変数」の「@の意味は?」
-
phpでget_headers()が使えない?
-
最小公倍数をPHPで求めるには
-
wininetでPOSTで値を渡せません
-
PHPでネットワークドライブのop...
-
時間表示
-
phpのheader("Location:#pos")...
-
PHPのif文でその処理を途中で抜...
-
Apache 2.4でphp-5.3を使いたい...
-
phpの中でphpを書けないか
-
require_once()でファイルが読...
-
header(Location:~)で$_SESS...
-
さくらインターネットでメール...
-
フォームで戻った際に入力済み...
-
PHPでメールを受信するには?
-
php4とphp5での数値の取り扱い...
-
PEAR(Image_QRCode)のエラー
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
[php初心者]サイトを見てデータ...
-
PHP8を使うと、大量のWarningが...
-
フォントの色を変えるには?
-
PHPで、エラーがない場合のみ画...
-
ワードプレスサイト PHP8.0.25...
-
トランザクションが原因?DBに...
-
PHPでSMTPを使ってメール送信で...
-
「@$変数」の「@の意味は?」
-
あらゆる例外に対応できるエラ...
-
PHPでネットワークドライブのop...
-
正規表現での最後尾のバックス...
-
phpのIF条件分岐で、代入する値...
-
qmailによるメールの受信について
-
PHPにて外部サイト内容が取得不...
-
phpでこの記述をもっと簡単に書...
-
bindValueエラー
-
Bootstrap3 と Faundation5 を...
-
PHPエラーチェック:ローカルで...
-
PHPでfatal errorが出ても無視...
-
AptanaStudioでASP形式のPHPシ...
おすすめ情報