- 締切済み
同サーバ内で同じPHPが動作しない
同一サーバ内に、Aというドメインに割り当てられた領域と、Bというドメインに割り当てられた領域があります。 Aというドメイン用のMySQL、Bというドメイン用のMySQLをそれぞれセットアップしました。 データ構造・内容などは全く同じです。 データベースの名前と接続ID・PWのみが異なります。 Aという領域で、仕様通り動作するPHPファイルを、 Bという領域に置いても、なぜかページの左上に「') ?>」と表示されて 動作していません。(動的なコンテンツ以外のコンテンツはページに適切に表示されます) すごく大まかで恐縮ですが、このような場合どのような原因が 考えられるでしょうか? ・別の簡単なPHPは動作したのでPHP設定云々ではなさそうです ・DBへの接続は確認済みです ・Bという領域のPHPを読み込んでもAという領域のDBに接続してデータを書きだすようにしても 同じようにページの左上に「') ?>」が表示されて、データが読み込まれません。 もし「こういうところをチェックしてみては?」という点があれば ご指摘いただければ幸いです。 よろしくお願いいたします。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- BellBell
- ベストアンサー率54% (327/598)
とりあえず、PHPとして動作していないという事だけは判りますが。 <?php echo('<?xml version="1.0" encoding="UTF-8"?>') ?>のうち、 ブラウザが<?~?>をコメントのように扱って表示していないという結果ですので、『<?』以降最初に出てくる『?>』までが非表示。 つまり、『<?php echo('<?xml version="1.0" encoding="UTF-8"?>』が非表示、残りの『') ?>』だけが表示されるという結果です。 動作しないファイルの拡張子は、『.php』になっていますかね? 元のサイト(A)は、拡張子htmlをPHPとして動くように設定しているなんて事はありませんか? .htaccessのアップロードのし忘れか、ローカルではhtaccess.txtとなっていて、アップロードしてからリネームする必要があるのにそれを忘れているのかも。 サーバ設定画面などで、『この拡張子をPHPとして動作させる』という設定があるのかも知れません。
- shimix
- ベストアンサー率54% (865/1590)
とりあえずは、両方でphpinfo()の内容を見比べるところからですかね。簡単なスクリプトでは表面化しない違いがあるかもしれません。 >Aという領域で、仕様通り動作するPHPファイルを、 >Bという領域に置いても、なぜかページの左上に「') ?>」と表示されて >動作していません。 表示は「') ?>」だけということですが、ブラウザで「ソース表示」にしたときも他のテキストはありませんか?htmlとしては(コメント扱いなどになっていて)表示されないだけでソースには別のものもあったりしますので。
お礼
ありがとうございました!とても参考になりました。
補足
ご回答ありがとうございます。 ソースを見てみますと、 phpファイル冒頭にある ----------- <?php session_start(); require_once('./DBAccess.php'); require_once('./DBMonth.php'); $obj = new MyDBAccess(); require_once('./Function.php'); ?> <?php echo('<?xml version="1.0" encoding="UTF-8"?>') ?> ----------- などをはじめとして、<?php~~が全て見えてしまっていました。 これは、PHPが動いていないということなのでしょうか? もしお分かりになりましたらヒントをいただけますと大変ありがたいです。 phpinfoも見比べてみようと思います。
phpinfo.php にて双方比較。
お礼
ありがとうございました!参考になりました。
お礼
ありがとうございました!!解決しました!! 本当にうれしいです。