1

ここで簡単な解決策を探して、周りを見回しましたが、簡単な解決策は何もないようです。mysql データベースからデータを取得してから、javascript 変数にデータを取得したいと考えています。

私のファイルのこれらの 2 つの var 項目は、名前が.js付けられtest.js、このファイルは私の.htmlファイルに呼び出されます。

var tag_name = 'example';
var client_id = '123456789';

という.phpファイルcall.phpで、このメソッド (PDO) を使用して必要なデータを取得しますMySQL

$stmt = $db->query('SELECT * FROM data WHERE id=1');
while($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
$tag_name = $row['tag_name']; 
$client_id = $row['client_id'];
}

.jsファイルでこれに沿って何かを試して達成したいtest.js-これは明らかに機能しませんが、うまくいけば私が達成しようとしていることに光を当てます:

var tag_name = '<?php echo $tag_name ?>';
var client_id = '<?php echo $client_id ?>';

Ajaxメソッドを使用してこれを行うことはできますか?私の研究では、使用する必要があることを読みましたJSONか?以前に質問されたことがある場合は、誰かが 50 行以上のコードを投棄しているだけではない投稿に誘導してください。

4

3 に答える 3

6

どうぞ:

JavaScript の部分:

$.ajax({
   url: 'call.php',
   dataType: 'json'
}).done(
   function(data){
     var tag_name = data[0];
     var client_id = data[1];
   }
);

call.phpファイル:

$stmt = $db->query('SELECT * FROM data WHERE id=1');
while($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
$tag_name = $row['tag_name']; 
$client_id = $row['client_id'];
}
echo json_encode(array($tag_name,$client_id));
于 2013-09-21T23:46:29.090 に答える
2

js を生成する php スクリプトを作成し、script タグを .js ファイルにリンクする代わりに、js を生成する php スクリプトにリンクします。

PHP

<?php
//mysql stuff up here
header('Content-Type: text/javascript');
?>
//some js here 
var tag_name = '<?php echo $tag_name ?>';
var client_id = '<?php echo $client_id ?>';
// some more js here

HTML

<script type="text/javascript" src="http://example.com/test.js.php"></script>
于 2013-09-21T23:47:54.403 に答える
1

PHP 変数を JSON としてエコーアウトして使用することもできますが、js 変数に php からのデータを設定するだけの場合は、変数を関数呼び出しで単純に渡すことをお勧めします。このようなものを php スクリプトに追加して、ページに使用しようとしている Javascript を有効にします。

<script type="text/javascript">
    setVariables('<?php echo $tag_name ?>', '<?php echo $client_id ?>');
</script>

次に、.js ファイルにその関数を作成して、それらの値を利用し、必要なことを行います。

function setVariables(name, id){
    var tag_name = name
    var client_id = id
    //Operations that need these values.
}
于 2013-09-21T23:50:46.750 に答える