2009-06-21 34 views
0

JS(これは外部スクリプトを意味します)によって、(php)インクルードファイルに割り当てられた変数の値は、以下のように取得できますか?外部からのPHPファイル変数の読み込みJS

あなたは変数を取得するために、AJAX要求を使用することを意味すると仮定すると
<?php 
$var1 = "a"; 
$var2 = "foo"; 
?> 

答えて

0

...それを行うための最善の方法は、次のようになります。

<?php 
$array["var1"]="a"; 
$array["var2"]="foo"; 
echo json_encode($array); 
?> 

とJSの終わりに、あなたがしたいと思います。

json = eval("(" + response + ")"); 

そしてVAR1とVAR2 json.var1/json.var2


だろう

編集:あなたのような何かを行うことができるはずその場合

<script type="text/javascript"> 
    var phpvars = <?php echo json_encode($array); ?>; 
<script> 

そして、ちょうどどこより上whistle.jsが含まれますし、そのファイル内Javascriptができるようになることを置きますphpvarsを介して変数にアクセスします。 (variables.phpファイルを、それがエコーされていることを除いて上記と同じフォーマットになるように変更する)。

+0

"echo"ステートメントがこのPHPファイルを含む/必要とするHTMLページ(第3のファイル)に干渉するのではないかと思いますか?申し訳ありません、私はAJAXを完全に新しくしました – Yopi

+0

基本的に、構造は "main.php"が必要です/ "variables.php"が必要です、そして "main.php"の内部にJavascriptがありますか?その場合は、javascriptがどこにあるかの上に "variables.php"を含めて、JavaScriptに直接エコーする必要があります。 javascriptが.jsファイルからのものである場合、それらの変数をその.jsファイルの前のscriptタグにエコーし、それらの変数を使用する必要があります。 – Thomas

+0

uh-oh申し訳ありませんが、それはもっとそうです: main.phpはvariables.phpを必要とし、whistles.jsを呼びます(プログレッシブエンハンスメントを尊重します)。 クリックすると、whistles.jsはvariables.phpからいくつかの値を取得する必要があります – Yopi

0

これまでのフィードバックを繰り返して、PHPを使用してHTMLを生成しました。PHPファイル自体はブラウザで使用できません。 variables.phpを使用して隠しタグを生成し、次にJavaScriptを使用してそれらを読み取ることができます。例えば

variables.php出力:FOO のjavascript:のdocument.getElementById( 'VARA')のinnerText

または

variables.php出力: のjavascript:のdocument.getElementById( 'varB'))。

関連する問題