我的目标是 - 终于 - 一个正常的'我的js文件中的JS数组。也许json是这样做的方式 - 但是数组中的元素应保持有序,它只是三个数组的数组:[[" 1"," 2",&# 34; 3"] [" 1"" 2"" 3"] [" 1"" 2& #34;" 3"。]]
我的php-query(它确实产生了上面的数组 - 我的意思是:它确实有效):
//这是文件' dbquery.php'
<?php
include_once('../resources/init.php');
$query = mysql_query("SELECT `useranswer`, `solution`, `time` FROM `results`");
$qlen = mysql_query("SELECT COUNT(1) FROM `results`");
$len = mysql_result($qlen, 0);
$user_a = array();
$solu_a = array();
$time_a = array();
while($row = mysql_fetch_assoc($query)){
array_push($user_a, $row['useranswer']);
array_push($solu_a, $row['solution']);
array_push($time_a, $row['time']);
}
$cd_result = array($user_a, $solu_a, $time_a);
$cd_answer = json_encode($cd_result);
echo $cd_answer;
?>
我认为json不是这里的适当形式。
现在我想要的是我的js文件中的一个js数组,如: my_array = [[1,2,3],[1,2,3],[1,2,3]] < /强>
但我非常失败。
使用$ .ajax()我不知道如何在没有&#39;数据的情况下立即获取所有数据:&#39;每个单一的价值。我只想&#34;赶上&#34;我的回声来自php - 怎么做?
答案 0 :(得分:1)
喜欢这个
<?php
include_once('../resources/init.php');
$query = mysql_query("SELECT `useranswer`, `solution`, `time` FROM `results`");
$qlen = mysql_query("SELECT COUNT(1) FROM `results`");
$len = mysql_result($qlen, 0);
$user_a = array();
$solu_a = array();
$time_a = array();
while($row = mysql_fetch_assoc($query)){
array_push($user_a, $row['useranswer']);
array_push($solu_a, $row['solution']);
array_push($time_a, $row['time']);
}
$cd_result = array($user_a, $solu_a, $time_a);
$cd_answer = json_encode($cd_result);
echo json_encode ($cd_answer); // encode in json format
?>
和ajax:
$.ajax({
type: "GET",
url: "test.php",
dataType: "json",
data : {anything : 1},
success:function(data){
var x = jQuery.parseJSON( data ); // parse the answer
// if you want in an array format then just use eval()
x = eval(x);
alert(x);
}
});
答案 1 :(得分:0)
如果您只需要在呈现页面时将PHP变量传递给JS,那么请在PHP视图层中执行此操作:
<script type="text/javascript">
var myInt = <?php echo $int ?>;
var myString = '<?php echo $string ?>';
var myArray = <?php echo json_encode($array) ?>;
// All these JS variables can now be used here
</script>
显然,你需要确保变量是有效的 - 所以在int的情况下,如果它是null或未定义,你需要确保你不呈现赋值 - 否则它将产生客户端错误。