假设我有这张表mytable
id | name | x | y
我从mytable
中提取行并使用它创建JavaScript对象:
PHP
$sql = "SELECT * FROM mytable";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
echo '<script type="text/javascript">';
echo "new Object({$row["id"]}, '{$row["name"]}', {$row["desk_x"]}, {$row["desk_y"]});";
echo '</script>';
}
}
JS
function Object(id, name, x, y) {
var obj = {
id:id,
name:name,
x:x,
y:y
};
}
目前这很好,但我们想要将color
添加到mytable
基本上我问我在PHP和JS中用什么来动态创建这个对象,所以你可以有任何列,而Object
对象只会添加一个带有列名的新属性? / p>
答案 0 :(得分:2)
您可以使用AJAX
将数据从服务器端发送到客户端。假设您有一个名为PHP
的{{1}}文件,其中包含您的代码:
script.php
然后假设您有一个名为if(isset($_GET['action']) && $_GET['action'] == 'testing'){
$sql = "SELECT * FROM mytable";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
echo json_encode($result);
}
}
的{{1}}文件。在这里,您将对JS
脚本文件进行script.js
调用,如下所示:
AJAX
答案 1 :(得分:1)
我猜你正在寻找的是如何在没有AJAX的情况下做到这一点(你在这里真的不需要)。
将对象放在数组中,然后输出JS变量:
PHP:
$("#table-data").load("fetch-data.php", function () {
$('#table-data .col1').editable({
//...
});
});