0

私の以前の質問を読んだ場合、php と javascript DOM の間でデータを共有する方法が、この割り当てでは許可されていないことがわかるかもしれません。

+-----------+   +------------+  +----------| +----------+  +-----------+    
|javascript +---+Ajax Request+--+handle.php+-+result.xml+->+DOM parser |    
+-----------+   +------------+  +----------+ +----------+  +-----------+    

というわけで、mysqlの情報をまとめて配列として取得し、この配列にjavascriptでajaxリクエストなしでアクセスしてみようと考えています。

私が思いつく唯一の方法は

   +---------+     +-----------------------------+  +--------------------------------------+
   |Php array|     | write in Dom make it hidden |  | Parse the hidden element by DOM API  |
   +---------+     +-----------------------------+  +--------------------------------------+ 

しかし、これはまったくエレガントに見えません。これを行うより良い方法はありますか?

4

1 に答える 1

2

データベースにクエリを実行し、スクリプト タグ内の JavaScript として結果を出力します。これで、すべてのデータが、必要に応じて使用できるローカルの JavaScript 変数に保存されます。

<script type="text/javascript">

  products = [];

  <?php
  mysql_connect('host', 'username', 'password');
  mysql_select_db('dbname');    

  $sql = "SELECT productName from products WHERE productTYPE = 1";
  $result = mysql_query($sql);
  while ($row = mysql_fetch_array($result)) {

    echo "products.push('" . addslashes($row['productName']) . "'); \n";

  }

  ?>

  //do something with all the stuff in the products array
  alert("There are " + products.length + " products in the array.");

</script>
于 2012-08-22T04:08:19.547 に答える