将PHP字符串数组作为JSON传递给JavaScript数组不工作
Passing PHP string array to JavaScript array as JSON not working?
我试图将数组从PHP转换为JavaScript,但它似乎不起作用。这是我的PHP代码query.php
:
$query = 'SELECT coupon FROM '.$disc;
$coupdb = array();
$results = $newdb->get_results($query);
foreach( $results as $result )
$coupdb[] = $result->coupon;
echo $coupdb[0]; //This shows perfectly the content but I want to send this array to a Javascript file.
我也尝试过JSON:
$coupdb_js = json_encode($coupdb);
这是我的JavaScript文件discount.js
:
var coupdb = <?php echo $coupdb ?>;
alert(coupdb[0]);
和JSON:
var coupdb = <?php echo $coupdb_js ?>;
alert(coupdb[0]);
@Jon给我看了一个"意外的令牌
<
"…以<?
为未知令牌。
所以你的PHP没有被处理。如果这是在.js
文件中,它将无法工作,除非服务器设置为处理这些文件(坏主意)
相反,它应该在HTML中的<script>
标记中,或者作为AJAX调用可能更好。
我终于找到了一个方法,这是一个简单的方法,但可能不是最好的方法:)
从我的php我已经发送了从bbdd捕获的coudb变量到javascript文件:
<?php
$DB_USER="dbuser";
$DB_PASSWORD="passdb";
$DB_NAME="dbname";
$DB_HOST="dbhost";
$newdb = new wpdb($DB_USER, $DB_PASSWORD, $DB_NAME, $DB_HOST);
$disc="discounts";
$query = 'SELECT coupon FROM '.$disc;
$coupdb = array();
$results = $newdb->get_results($query);
foreach( $results as $result )
$coupdb[] = $result->coupon;
?>
<script type="text/javascript">
var coupdb = <?php echo json_encode($coupdb); ?>;
</script>
在js文件中,我通常使用变量:
alert (coupdb[0]);
相关文章:
- 如何遍历包含对象的数组-javascript
- 保存数组javascript
- 查找数组javascript中包含的元素类型
- 算法:从数组(javascript/angular)中按当前日期获取上一个和下一个事件
- 从多维数组javascript中提取特定值
- 如何在数组javascript中选择伪随机值
- 拆分字符串数组(JavaScript)后未定义
- 从数组JavaScript中删除并返回最后n个项的最快方法
- 使用条件for循环更新数组-Javascript
- 从数组javascript创建新对象
- 用数组(javascript)中的值替换regex捕获
- 从数组[Javascript]的总长度中减去一个干净的数字
- 将一个字符串数组解析为一个新的数组javascript
- 如何将对象转换为对象数组javascript
- 赢得't循环数组javascript
- 从不同的数组 JavaScript 中获取值
- 多维数组 JAVASCRIPT 出了点问题
- 可以't分配给一个对象数组javascript
- 比较数组JavaScript中的对象
- 如何完成缺少(连续)元素的数组|Javascript