我正在尝试创建一个表单,用PHP和Ajax动态更新我的表,而不仅仅是使用PHP。表单工作一切都很好exept我不知道如何实现Ajax的东西。如果你能给我一个与我的问题有关的手或有用的信息,那就太好了。
PHP文件: item.php?项目=职员
<input type="submit" name="submit" onClick="UpdateRecord('Staff');" value="Unquip" />
Javasript代码:
<script type="text/javascript">
function UpdateRecord(item)
{
jQuery.ajax({
type: "POST",
url: "item.php",
data: 'item='+item,
cache: false,
success: function(response)
{
alert("Record successfully updated");
}
});
}
</script>
我仍然缺少一些重要的东西。
谢谢
答案 0 :(得分:1)
如果可以的话,我强烈建议你研究一下像jQuery这样的javascript框架,这使得Ajax部分变得更容易。然后,您不必自己处理XMLHttpRequests,而只需调用jQuery函数。
可以在jQuery docs
中找到该功能的一些好例子答案 1 :(得分:1)
如果我想将它发送给客户端,那么我通常会使用JQuery:
$.ajax({
type:'POST',
url: 'JQuery.php',
data: 'Action=foo&val=' + variable ),
async: true,
success: function(msg){ do something }
})
将它放在javascript函数中,并创建一个回调循环或一个计时器
t=setTimeout("yourfunction( )",60000);
所以它会不时更新。 您也可以通过向服务器发送请求的方式设置它,并且超时很长,如果在超时期间发生某些事情,服务器将响应,如果我正确的gchat / fbchat以这种方式工作。
此外,这个脚本的shuld运行在cliend端,因为服务器无法从客户端浏览器启动请求/发布,所以如果纯粹的php甚至可以实现这一点,我就不会这样了。
如果您想要请求fev页面,请在服务器端汇总,然后CURL。
答案 2 :(得分:1)
我看到你已经在使用jQuery,并且可能正在收到警报通知你已经拨打了电话?
如果是这种情况,您可以使用几种不同的选项来更新表格:
你可以用PHP做到这一点(让它为你生成HTML,我实际上不推荐这种做法,将你的逻辑与你的观点分开);但如果你已经在使用模板,这是一个可行的选择。
然后使用Javascript / jQuery处理此信息,并使用最新信息重新填充或更新您的表。您可以通过在行和单元格中添加可用的ID来更轻松地完成此操作,这样您就可以专门定位表格的某些部分来更新它们。
这比#2更容易,但由于重新绘制,肯定会在客户端上花费更多时间。特别是当表包含所有需要重建/重新计算的行时。
我建议你研究做#2,你用id="item-3214325643"
定义一行(<tr>
)并让Javascript运行PHP的结果(应该只包含更新的结果)在处理输入之后)保持表的更新。
我希望这能帮到你!如果您需要任何具体建议,请不要犹豫与我联系:-)或重新打开另一个更具体的问题。
答案 3 :(得分:0)
This is jquery ajax easy to implement ajax.
$.ajax({
type: "POST",
url: "item.php",
data: { name: "John", location: "Boston" }
}).done(function( msg ) {
alert( "Data Saved: " + msg );
});
and in item.php take value as $_POST name or location and all the data you need to and
update as you want. like
if(isset($_POST['name']))
{
// write code that you want,
}
您可以根据需要将数据作为GET或POST发送 希望它会对你有所帮助。