2017-08-13 140 views
1

我有一个HTML,PHP和JavaScript文件。 通常在php中,你会执行这样的查询。这很好,我想保持。如何将php对象转换为javascript?

<?php 
    $sql = "SELECT * FROM voedingsmiddelen"; 
    $result = mysqli_query($conn, $sql); 
    ?> 

然后你会使用这个PHP获得'名称'字段。这会输出“名称|年龄|性别|出生日期|”。这部分我想在JavaScript中做。

$count = 0; 
while($row = mysqli_fetch_assoc ($result)) { 

    $fieldinfo = mysqli_fetch_field_direct($result,$count); 
    echo $fieldinfo->name; 
    $count++; 
} 

这就是我想到的,但我在这里卡住了。我想要一个带有'名字'的提醒,并且提醒'性',并且从数据库提醒'birthdate'。

var arraylength=<?php echo sizeof($result)+1; ?>; 
     var i=0; 
     while(i<arraylength){ 
      //what goes here i dunno 
      alert(idunnohow[i]); 

      i++; 
     } 

这可能吗?如何?

回答

2

尝试使用json_encode()编码您的PHP数据。这就是所需要的。

 
var array = <?php echo json_encode(mysqli_fetch_all($result, MYSQLI_ASSOC)) ?>; 
+0

什么样的数组是这个,我如何得到那里的东西?警报(数组[0])不起作用。 – user2322791

+0

'mysqli_fetch_all()'实际上代替了你的例子中发现的while循环:它返回一个关联数组数组,后者表示数据库匹配查询的单个记录。要查看结果,你可以尝试在上面给出的行后面追加'console.log(array);',并通过检查浏览器的Javascript控制台来查看自己的结果。我敢打赌,这是一个对象数组,每个对象都包含每个记录的字段作为具有字段值的属性。 – cepharum