質問: ### 前提・実現したいこと PHPを実行するがfile:で始まっていたらjavascriptでhttp://localhost/にリダイレクトする プログラムを作りたいです。(file:上でPHPが実行できないため) 探しているのはnoscriptのようなことをPHPでもするプログラムです。 ファイル数のよく変わるフォルダの画像を表示するプログラムに組み込みます。 画像は1.jpgからの連番で保存されており、 1.jpgから順に表示するプログラムを作っています。 ### 発生している問題・エラーメッセージ ``` エラーメッセージはありませんが、ファイルを開くと内容がすべてそのまま表示されます。 勝手に~が追加されています。 ``` 実行成功範囲 | ブラウザ | HTML | PHP | javascript | | --- | --- | --- | --- | | edge | △ | × | ○ | | IE | × | × | × | | Firefox | × | × | × | | Chrome | × | × | × | ### 該当のソースコード ``` 漫画閲覧プログラム "; ++$num; } ?> ``` 内容としてはfile:///C:/xampp/htdocs/で始まるURLの場合、 自動的にhttp://localhost/に書き換え再読み込みする その後、PHPを実行したいです。 また、PHP単体で動かしたところ正常に動きました。 ### 試したこと html javascript php 同時記述についてのページを探す ### 補足情報(言語/FW/ツール等のバージョンなど) XAMPP3.2.2
回答: エラーが出ないのであればXAMMPでApacheをスタートさせていなくて、アクセスするURLを間違えているのではないかと思います。 headerをその位置でコールするとエラーになります。 header:PHPマニュアル 該当場所抜粋: > > 覚えておいて頂きたいのは、header() 関数は、 通常の HTML タグまたは PHP からの出力にかかわらず、すべての実際の 出力の前にコールする必要があることです。 頻出するエラーとして、include または require 関数、他のファイルをアクセスする関数に 空白または空行があり、header() の前に出力が 行われてしまうというものがあります。同じ問題は、単一の PHP/HTML ファイルを使用している場合でも存在します。 > > >