1

HTMLをエコーするコードを含むPHPファイルがあります。次のように実行できる一部のエンドユーザーに PHP ファイルを提供したいと思います。

<?php include 'file.php'; ?>

残念ながら、私のユーザーにはたとえば index.html があり、これは機能しません。HTMLファイルをPHPに変更するようユーザーに依頼したくありません。もう 1 つの方法は、.htaccess ファイルを変更することです。

<Files index.html>
AddType application/x-httpd-php .html
</Files>

これも彼らに聞きたくない。それで、私の他のオプションは何ですか?エコー結果を HTML ファイルで表示することはできますか? 多分いくつかのJavascriptの助けを借りて?

4

3 に答える 3

7

これは AJAX で行うことができます。少し難しそうに見えるかもしれませんが、率直に言って、多くの人が考えるよりもはるかに簡単です。実際、それはとても簡単です。

Ajax を JavaScript コードに入れると、次のようになります。

$('#stSelect').change(function() {
    var sel_stud = $(this).val();
    //alert('You picked: ' + sel_stud);

    $.ajax({
        type: "POST",
        url: "your_php_file.php",
        data: 'theOption=' + sel_stud,
        success: function(whatigot) {
            alert('Server-side response: ' + whatigot);
        } //END success fn
    }); //END $.ajax
}); //END dropdown change event

PHP ファイルからのデータは、AJAX 呼び出しの成功関数で HTML ドキュメントに入り、そこで処理する必要があることに注意してください。そこで、受け取ったデータを DOM に挿入します。

たとえば、HTML ドキュメントにid="myDiv". PHP からのデータを HTML ドキュメントに挿入するには、行:alert('Server-side response: ' + whatigot);を次のように置き換えます。

$('#myDiv').html(whatIgot);

プレスト!DIV には、PHP ファイルからエコーされたデータが含まれています。


ajax は、コントロールの値の変更 (上記の例のように)、またはドキュメントの読み込み時にトリガーできます。

$(function() {
//alert('Document is ready');

    $.ajax({
        type: "POST",
        url: "your_php_file.php",
        data: 'Iamsending=' + this_var_val,
        success: function(whatigot) {
            //alert('Server-side response: ' + whatigot);
        } //END success fn
    }); //END $.ajax
}); //END document.ready

それがどのように機能するかについてのアイデアについては、この例を見てください。

上記の例では jQuery を使用しているため、ページのタグで次の参照が必要になることに注意してください。

<head>
    <script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
</head>
于 2013-06-20T19:12:31.000 に答える
1

これにより、html ページの本文が、呼び出された URL のコンテンツに置き換えられます。

$('body').load( url,[data],[callback] );
于 2013-06-20T19:11:38.073 に答える
1

JavaScript を追加できる場合は、ajax リクエストで作業を行う必要があります...

<script>
var req = new Request({
    method: 'get',  
    url: 'file.php',
    onRequest: function() { // loading image    
    },
    onSuccess: function(response) {
        document.getElementById("destination").innerHTML = response;
    }
}).send();
</script>

また、コードを入力するための div も必要です。

<div id="destination"></div>
于 2013-06-20T19:11:50.610 に答える