0

私は職場で Web フォーラムを作成する必要がある仕事に取り組んでいます。私の愚かさで、JavaScriptがクライアント側の言語であることを事前に知らずに、JavaScriptを使用することにしました。javascript からサーバーにデータを保存し、データを読み取れるようにする方法が必要です。node.js などを調べてみましたが、これを行うには Web サーバー全体 (これは私のものではありません) を再構成する必要がありました。もう 1 つの解決策は、php を使用することです。ここに問題があります: Web ページのレイアウトを設定する html ファイルで使用されるインクルードがたくさんあります (つまり、css ファイル、html ファイル、さらには php インクルード)。ファイル内のすべてのインクルードが壊れるため、インデックス ファイルの名前を index.php に変更できません。したがって、javascript と html を使用して、たとえばテキスト ファイルを保存する方法が必要です。方法があれば、HTMLにphpファイルを含めてから、javascriptコードでphp関数を呼び出して、ファイルの内容をindex.htmlページに取得するなど、非常に簡単なことをしたいと思います。次のような簡単なコマンドを呼び出す方法があると思いました。

<script>
    var thedata = <?php getData() ?>
</script>

ここで、php 関数 getData() は、すべてのデータを含む json でエンコードされた文字列を返します (別の php ファイルから処理されます)。これを行う方法はありますか?index.html ファイルを index.php に変更せずにサーバー上のデータ ストレージを処理する方法について、他に何か提案はありますか?

注: Apache の httpd.conf ファイルにアクセスして、.html ファイルを php ファイルとして前処理するためのハンドラーを追加しようとしましたが、うまくいかないようです (HTML ファイルで echo 'test' ほど単純なものは機能しません)。

4

3 に答える 3

4

これをあなたに追加してください.htaccess

AddHandler application/x-httpd-php5 .html .htm

ソース

これにより、Apache は HTML ファイルを PHP を含むファイルとして扱います。ただし、通常の HTML ファイルで誤って PHP 構文を使用しないように注意してください。

PHP モードに入るには、引き続き PHP タグを使用する必要があることに注意してください。これは期待どおりに機能します。

<p>html content ...  <?php echo 'hello, world'; ?></p>

しかし、これはエコーコマンドを出力します:

<p>echo 'hello, world'</p>
于 2013-02-06T00:05:19.637 に答える
2

mod_phpを介してWebサーバーにページを処理させることができれば。Apache を使用している場合は、これを .htaccess に追加するだけです

AddHandler x-httpd-php .html .htm 
AddHandler php-script .php .html .htm
AddHandler php5-script .php .html .htm
AddType application/x-httpd-php .htm 
AddType application/x-httpd-php .html

これを行うことの影響を理解していただければ幸いです。すべてのページがそのように処理され、ページのメモリ/CPU 使用量が大幅に増加します。

これが 1 つのファイル内で発生する場合は、必ずステートメント内に追加してください。

あなたの例では、次を追加する必要があります。

<script>
    var thedata = <?php echo getData(); ?>
</script>
于 2013-02-06T00:07:09.303 に答える
-2

ファイル拡張子は.php、サーバーがファイルを解析することを認識できるようにする必要があります。

于 2013-02-06T00:03:41.317 に答える