实际上我试图将mysql的结果存储为数组(javascript)。所以我尝试这样..当我在数据库中存储整数值时,它工作得很好。但如果我在数据库中存储varchar变量,我没有得到任何值。有人帮助我。
var tab_no = [<?PHP $qry4 = mysql_query("SELECT table_no FROM table_info");
$i4 = mysql_num_rows($qry4);
while($res4 = mysql_fetch_array($qry4))
{
$i4--;
echo $res4['table_no'];
if($i4!="0"){
echo ",";}
}
?>];
数据库表
_________________
| id | table_no |
------------------
| 1 | 1A |
| 2 | 3B |
| 3 | 4D |
------------------
现在我想要的是存储table_no所有值都像javascript这样的数组
var tab_no = [ 1A,3B,4D ];
答案 0 :(得分:2)
您需要将值封装在&#34;因为它是一个字符串。
示例:
var tab_no = [ "1A","3B","4D" ];
(简而言之,一个解决方案就是改变你的PHP)
echo $res4['table_no'];
到
echo '"'.$res4['table_no'].'"';
更好的解决方案是使用json_encode(处理特殊字符等问题,但是因为看起来你刚开始使用网络编程,我希望这个答案能让你更好地理解这两个问题。的语言)。
答案 1 :(得分:2)
将结果放在PHP数组中,然后在将其分配给JS数组时使用json_encode
:
<?php
$tab_no = array();
while($res4 = mysql_fetch_array($qry4)) {
$tab_no[] = $res4['table_no'];
}
?>
var tab_no = <?php echo json_encode($tab_no); ?>;