我正在使用jeasy-ui来填充数据网格。我今天早些时候有这个工作,然后决定移动一些无效的文件并最终回滚我的更改。
不幸的是现在它只填充表格并允许我删除行,但保存和插入似乎什么都不做。最糟糕的是我知道这很简单,但我现在已经工作了4个小时了,是时候问我没看到什么了。
修改 的
'date'=>后缺少逗号$ date on save_user.php。 知道这很简单。谢谢您的帮助。
HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="keywords" content="jquery,ui,easy,easyui,web">
<meta name="description" content="">
<title>Scheduler</title>
<link rel="stylesheet" type="text/css" href="css/black/easyui.css">
<link rel="stylesheet" type="text/css" href="css/icon.css">
<script type="text/javascript" src="js/jquery-1.9.1.js"></script>
<script type="text/javascript" src="js/jquery-ui.js"></script>
<script type="text/javascript" src="js/jquery.easyui.min.js"></script>
<script type="text/javascript" src="js/jquery.datagrid.js"></script>
<script type="text/javascript">
//create datafields
$(function(){
$('#dg').edatagrid({
url: 'get_users.php',
saveUrl: 'save_user.php',
updateUrl: 'update_user.php',
destroyUrl: 'destroy_user.php'
});
});
</script>
</head>
<body>
<table id="dg" title="Edit Teams" style="width:700px;height:250px"
toolbar="#toolbar" pagination="true" idField="id"
rownumbers="true" fitColumns="true" singleSelect="true">
<thead>
<tr>
<th field="date" width="50" editor="{type:'validatebox',options:{required:true}}">Date</th>
<th field="starttime" width="50" editor="{type:'validatebox',options:{required:true}}">Time Start</th>
<th field="endtime" width="50" editor="{type:'validatebox',options:{required:true}}">Time Finish</th>
<th field="team1" width="50" editor="{type:'validatebox',options:{required:true}}">Team 1</th>
<th field="team2" width="50" editor="{type:'validatebox',options:{required:true}}">Team 2</th>
</tr>
</thead>
</table>
<div id="toolbar">
<a href="#" class="easyui-linkbutton" iconCls="icon-add" plain="true" onclick="javascript:$('#dg').edatagrid('addRow')">New</a>
<a href="#" class="easyui-linkbutton" iconCls="icon-remove" plain="true" onclick="javascript:$('#dg').edatagrid('destroyRow')">Destroy</a>
<a href="#" class="easyui-linkbutton" iconCls="icon-save" plain="true" onclick="javascript:$('#dg').edatagrid('saveRow')">Save</a>
<a href="#" class="easyui-linkbutton" iconCls="icon-undo" plain="true" onclick="javascript:$('#dg').edatagrid('cancelRow')">Cancel</a>
</div>
get_users.php(工作)
<?php
include 'conn.php';
$rs = mysql_query('select * from schedule');
$result = array();
while($row = mysql_fetch_object($rs)){
array_push($result, $row);
}
echo json_encode($result);
?>
destroy_user.php
<?php
$id = intval($_REQUEST['id']);
include 'conn.php';
$sql = "delete from schedule where id=$id";
@mysql_query($sql);
echo json_encode(array('success'=>true));
?>
Save_user.php
<?php
$date = $_REQUEST['date'];
$starttime = $_REQUEST['starttime'];
$endtime = $_REQUEST['endtime'];
$team1 = $_REQUEST['team1'];
$team2 = $_REQUEST['team2'];
require 'conn.php';
$sql = "insert into schedule(date,starttime,endtime,team1,team2) values('$date','$starttime','$endtime','$team1','$team2')";
mysql_query($sql);
echo json_encode(array(
'id' => mysql_insert_id(),
'date' => $date
'starttime' => $starttime,
'endtime' => $endtime,
'team1' => $team1,
'team2' => $team2
));
?>
update_user.php
$id = intval($_REQUEST['id']);
$date = $_REQUEST['date'];
$starttime = $_REQUEST['starttime'];
$endtime = $_REQUEST['endtime'];
$team1 = $_REQUEST['team1'];
$team2 = $_REQUEST['team2'];
include 'conn.php';
$sql = "update schedule set date='$date',starttime='$starttime',endtime='$endtime',team1='$team1',team2='$team2' where id=$id";
mysql_query($sql);
echo json_encode(array(
'id' => $id,
'date' => $date,
'starttime' => $starttime,
'endtime' => $endtime,
'team1' => $team1
'team2' => $team2
));
答案 0 :(得分:0)
您使用了$_REQUEST
但是如何将数据(如id,date
,...)传递给PHP文件。我不熟悉jeasy-ui
,但我想你需要在你的jquery代码中定义类似columns
的东西来引入传递给PHP文件的数据。