<?php
$query1="SELECT * FROM user_photos_offline WHERE ssmid='11'";
$sql=mysql_query($query1);
$count=mysql_num_rows($sql);
while($row=mysql_fetch_assoc($sql)){
$result=$row['name'].',';//resuts kani,raja,mahi,gobi
}
?>
<script>
var photos='<?php echo $result;?>';
</script>
我只得到最后一个值(gobi),但我希望js中的所有值。我不知道如何在javascript中获取所有值
答案 0 :(得分:2)
您必须在数组中添加结果:
$results=array();
while($row=mysql_fetch_assoc($sql)){
$results[]=$row['name'];//fill your array
}
//然后内爆你的数组
<script>
var photos='<?php echo implode(",",$results); ?>';
</script>
答案 1 :(得分:1)
而不是在while循环中一次又一次地“覆盖”$ result,使其成为一个数组并附加项目。
然后在输出变量时使用json_encode()来获得有效的javascript对象/数组表示法。
$result=array();
while($row=mysql_fetch_assoc($sql)) {
// append the value of the field 'name' of the current record to $result
$result[]=$row['name'].',';//resuts kani,raja,mahi,gobi
}
...
var photos=<?php echo json_encode($result);?>
mysql_* extension is deprecated并将使用php 7删除。最好选择another api,如mysqli或PDO_mysql。