如何在 PHP / MySQL 中使用 jQuery SlickGrid(加载服务器数据并保存更改)
Posted
技术标签:
【中文标题】如何在 PHP / MySQL 中使用 jQuery SlickGrid(加载服务器数据并保存更改)【英文标题】:How to use jQuery SlickGrid with PHP / MySQL (load server data and save changes) 【发布时间】:2011-04-16 03:37:48 【问题描述】:请在SlickGrid 代码中找到的所有示例中,数据数组是在客户端随机生成的。
获取:我需要知道如何使用 php 从 mysql 数据库中获取此信息并使用 jQuery / AJAX 将其返回到 SlickGrid。
保存: 我已经在 *** 上找到了一个链接,用于使用隐藏输入 (Saving changes in SlickGrid) 从网格中保存数据,但目前还不清楚我应该如何处理这些数据以获取PHP 脚本。
一些详细的帮助和/或指针将不胜感激,我是一个菜鸟,我没有找到关于这个很棒的插件的足够文档。
【问题讨论】:
【参考方案1】:SlickGrid 需要一个数据数组来填充表格。您可以在 PHP 中将其创建为字符串,并在创建 SlickGrid 时在 javascript 中使用它。
请注意;这是快速、肮脏和未经测试的!
PHP
$data = '';
$i = 0;
$query = "
SELECT
`title`, `duration`, `percentComplete`, `start`, `finish`, `effortDriven`
FROM
`myTable`
";
$result = mysql_query($query);
while($row = mysql_fetch_array($result, MYSQL_ASSOC))
$data .= '
data['.$i.'] =
title: "'.$row['title'].'",
duration: "'.$row['duration'].'",
percentComplete: "'.$row['percentComplete'].'",
start: "'.$row['start'].'",
finish: "'.$row['finish'].'",
effortDriven: "'.$row['percentComplete'].'"
;
';
$i++;
JavaScript
<script type="text/javascript">
var grid;
var columns = [
id:"title", name:"Title", field:"title",
id:"duration", name:"Duration", field:"duration",
id:"%", name:"% Complete", field:"percentComplete",
id:"start", name:"Start", field:"start",
id:"finish", name:"Finish", field:"finish",
id:"effort-driven", name:"Effort Driven", field:"effortDriven"
];
var options =
enableCellNavigation: false,
enableColumnReorder: false
;
$(function()
var data = [];
<?php echo $data; ?> //This is where we echo the PHP variable $data which contains our JavaScript array as a string.
grid = new Slick.Grid($("#myGrid"), data, columns, options);
)
</script>
【讨论】:
感谢您的回复,山姆。请问,我需要知道,PHP 会将数组输出为 JSON 还是默认的 print / echo? 请我在这里仍然需要一些帮助。我尝试以 JSON 形式回显并尝试回显,但均无效。请问有人吗? 您不需要将其作为 JSON 回显,它已经在此行<?=$data?>
处打印在正确的位置。
在没有原生 JSON 函数的浏览器中,这仍然有效,还是需要从数组转换为 jason?
如果你先准备一个关联数组,将所有数据保存到 $data 上,然后只使用 =json_encode($data)?> 会更干净。这样会干净得多。以上是关于如何在 PHP / MySQL 中使用 jQuery SlickGrid(加载服务器数据并保存更改)的主要内容,如果未能解决你的问题,请参考以下文章
如何在 PHP 函数中正确使用 MySQL 查询? [关闭]
如何在 MySQL 中使用 Flutter 和 php 上传图片