2012-03-20 12 views
0

可能性の重複:
Pass a PHP string to a Javascript variable (including escaping newlines)スクリプトからphp変数のデータにアクセスできますか?

それはjqueryの/ javascriptのスクリプトでは、PHPの変数のデータにアクセスすることが可能ですのであれば、私は思ったんだけど。私は、データベースから特定の投稿をもたらすワードプレスクエリ/ループを持っていると言う。

もし私がそのポストをphp変数に格納したら、その変数/ポストをjavascript /スクリプトから参照できる方法はありますか?

+0

素晴らしい、みんなありがとう。一緒に働くたくさん。 –

答えて

0

はい。あなたはできる。

シナリオ:あなたのブラウザはA開始したときにHTMLやPHPだから同じファイルに

<?php $value =" Value from PHP"; ?> 
    <html> 
    <head> 
     <script> 
     <?php echo "var phpVar ='" . $value ."'"; ?> 
      alert(phpVar); 
     </script> 
     </head> 
    <body> 
    </body> 
    </html> 
0

PHPページでは以下を行うことができます。

<script> 
    alert("<?php echo $hello_world;?>"); 
</script> 

これは.jsファイルでは機能しませんが、明らかにPHP構文を解釈するように設定されていないためです。

0

ある場合は2:1 HTMLとPHPは別々のファイルにシナリオ

HTML 
<html> 
<head> 
    <script type='text/javascript' src='code.php' runat='server'></script> 
    <script> 
    // you can get phpVar here 
    alert(phpVar); 
    </script> 
    </head> 
<body> 
</body> 
</html> 

code.php 

<?php 
    $value =" Value from PHP"; 
    echo "var phpVar = '". $value ."'"; 
    ?> 

ある場合要求すると、サーバーにヒットします。サーバーは要求を処理し、必要なすべてのメソッドと設定変数を実行し、結果をブラウザに返します。その時点で、セッション中でないものはPHP側で消滅します(つまり、永続的ではありません)。したがって、javascriptがこのPHP変数にアクセスする方法はありません。

何をやってみたいことはjavascript関数へのPHPの変数やオブジェクトを渡すことであるならば、私はjson_encodeを使用してお勧めします: http://www.php.net/manual/en/function.json-encode.php

<?php 
$arr = array('a' => 1, 'b' => 2, 'c' => 3, 'd' => 4, 'e' => 5); 

echo json_encode($arr); 
?> 

上の例の出力は以下となります。

{"a":1,"b":2,"c":3,"d":4,"e":5} 
0

あなたでしポストのようなスクリプトタグのインライン(あなたは「ループ」にしていると仮定し、のみ出力1つのポスト)についての情報を出力:

<script> 
var post_id = <?php the_ID(); ?>; 
var post_title = "<?php the_title(); ?>"; 
var post_excerpt = "<?php the_excerpt(); ?>"; 
</script> 

しかし、達成しようとしていることに応じて、これに別の方法でアプローチすることができます。おそらく、スクリプトを使用してJSON形式の投稿データを出力し、javascriptでネイティブに理解できるようにし、AJAX関数を作成してそれらの投稿を取得してレンダリングします。ここでは役立つかもしれないいくつかのリソースは次のとおりです。

Wordpress JSON API jQuery AJAX

関連する問題