私は奇妙な問題があります。それはほとんどバグのようです。私は$のURLの値をエコー場合PHPヘッダがクエリ文字列を保持しない
if ($object->error) {Form::BuildReturn(); header ("location:$url");}
は今、私は正しい値を取得:/projects/view/112/?edit-note=105
をしかし、スクリプトが実行されたとき、それは/projects/view/112/
に私を取ります。
ここでも奇妙な部分があります。ヘッダーの直後に何かをエコーしたり印刷したりして、それから私が望むように/projects/view/112/?edit-note=105
に連れて行くことができます。例:
if ($object->error) {Form::BuildReturn(); header ("location:$url"); echo 0;}
私は上の約半分の時間が今、「PHPヘッダが値を取得」「PHPのヘッダクエリ文字列」のような用語を使用してこれを検索しようとした、としました。私は実際の解決策ではなく、「ヘッダー情報を変更できません」警告を生成するハックのある回避策を使用することを望みます。
'header(" Location:... ")'は受け付けません。 $ urの代わりにPHPで "/ projects/view ..."を直接書くとうまくいくのですか?エコーで動作する場合は、リダイレクトの後に 'exit;'を追加してみてください。 – Dion
Doh ...働いていた 'exit;' ...とは考えていませんでした。ありがとうございました。あなたが回答としてそれを投稿するなら、私はそれを受け入れるでしょう。 – tuespetre
プロトコルとサーバー名 'http://example.com/.. 'を含む絶対URLを試してください。' wget -S'またはFirebugヘッダーダンプも表示してください。また、あなたのコードに複数のheader()呼び出しがあり、より特定のものを上書きする可能性があります。 – mario