在javascript var中检索mysql数据

时间:2014-03-17 04:29:40

标签: javascript php mysql

我需要在Javascript Var中使用PHP从mysql中检索数据。当前数据是静态数据,我需要通过从mysql db中重新获取它们而不改变格式来使它们动态化。基本上我需要从mysql获得CURRENCIES,WEBUY,WESELL INVBUY,INVSELL。提前谢谢!

<script type="text/javascript">
    var currencies={};
            currencies['USD'] = {WEBUY: 1.0965, WESELL: 1.1235, INVBUY: 0.912, INVSELL: 0.8901};
            currencies['AED'] = {WEBUY: 0.285, WESELL: 0.3195, INVBUY: 3.50877, INVSELL: 3.12989};
            currencies['ARS'] = {WEBUY: 0.1175, WESELL: 0.1525, INVBUY: 8.51064, INVSELL: 6.55738};
            currencies['AUD'] = {WEBUY: 0.98, WESELL: 1.03, INVBUY: 1.02041, INVSELL: 0.97087};
            currencies['BBD'] = {WEBUY: 0.495, WESELL: 0.5995, INVBUY: 2.0202, INVSELL: 1.66806};
            currencies['BMD'] = {WEBUY: 0.95, WESELL: 1.145, INVBUY: 1.05263, INVSELL: 0.87336};
            currencies['BRL'] = {WEBUY: 0.445, WESELL: 0.4895, INVBUY: 2.24719, INVSELL: 2.0429};
            currencies['BSD'] = {WEBUY: 0.84, WESELL: 1.1095, INVBUY: 1.19048, INVSELL: 0.90131};
            currencies['BWP'] = {WEBUY: 0.1, WESELL: 0.1425, INVBUY: 10, INVSELL: 7.01754};
        </script>

3 个答案:

答案 0 :(得分:0)

这里有两个提示。

首先,您可以使用StdClass来构建对象。

$currency = new StdClass;
$currency->webuy = $valuewebuy;
$currency->wesell = $valuewesell;
//continue

然后,您可以创建一个关联数组

$myarray[$thecurrency] = $currency;

最后,只需使用json_encode($myarray)来获取你的json。

这里是概念,所以只需用你提取的数据添加一些循环,就完成了!

答案 1 :(得分:0)

如果我理解正确,您是否希望让PHP代码发出Javascript,然后将其嵌入到传递给浏览器的HTML页面中?

这并不太难,这是PHP中一个简单的编程问题。发出mysql_query()来从数据库中获取所需的结果集并不难,然后迭代mysql_fetch_assoc()的返回值,这将为查询中的每一行提供一个关联数组结果集。

从那里你只需要发出正确的echo或printf命令,这样你的脚本就会发出有效的Javascript代码。

另一种方法是使用更复杂的AJAX ...你可以保持Javascript代码静态,但(彻底)重写它,以便它将请求发回给服务器,该服务器使用JSON或XML对象进行响应,然后可以将其转换为Javascript中的数据结构。

答案 2 :(得分:0)

非常感谢我明白了。

<script type="text/javascript">
var currencies={}; 
<?php 
  $db=mysql_connect('localhost','dbuser','pass') or die('Error connecting to the server'); 
  mysql_select_db('db') or die('Error selecting database'); 
  $result=mysql_query('SELECT * FROM rates2') or die ('Error performing query'); 
  while($row=mysql_fetch_array($result, MYSQL_ASSOC)){ 
?> 
currencies['<?php echo ''.$row['code'].''?>'] = {WEBUY: <?php echo ''.$row['webuy'].''?>, WESELL: <?php echo ''.$row['wesell'].''?>, INVBUY: <?php echo ''.$row['invbuy'].''?>, INVSELL: <?php echo ''.$row['invsell'].''?>}; 
<?php 
  } 
?>