大家。我是一个相对较新的开发人员,在jQuery AJAX和PHP方面经验有限。我正在开发一个Wordpress插件,这对我来说也是一个非常好的学习练习。
基本描述:在我的插件的管理页面上,我有一堆表格将显示为模态窗口(使用jQuery UI),填写完成后,会将其字段提交到单独的PHP文件进行处理。该文件将接受数据并准备插入我已设置的wpdb表。
插件管理页面(PHP):
<div id="form1" title="My Awesome Form">
<form id="frmNewCom">
<fieldset>
<table>
<tr>
<td><label for="name">Community Name</label>
<td><input type="text" name="newComName" id="newComName" />
</tr>
<tr>
<td><label for="lefthead">Left Column Header</label></td>
<td><input type="text" name="newComLefthead" id="newComLefthead" /></td>
</tr>
<tr>
<td><label for="righthead">Right Column Header</label></td>
<td><input type="text" name="newComRighthead" id="newComRighthead" /></td>
</tr>
</table>
</fieldset>
</form>
</div>
表单的jQuery UI代码($pcal
是我的无冲突事物):
$pcal('#form1').dialog({
autoOpen: false,
height: 275,
width: 400,
modal: true,
buttons: {
"Add Living Option": function() {
// Functionality for submit
},
Cancel: function() {
$pcal(this).dialog("close");
}
},
close: function() {
// close function
}
});
现在问题就在于此。从这一点来说,我不确定该怎么做。我已经阅读了很多关于使用.post()
和.serialize()
的内容,而且此时我已经非常困惑。
你们有没有深入了解适当的javascript / jQuery到你可以借出的PHP处理?我也在Wordpress论坛上问过这个问题,但我总是在这里找到好的建议,所以我想问一下。任何和所有的帮助表示赞赏。
答案 0 :(得分:1)
一个非常简单的例子是:
$pcal.post("test.php", $pcal("#frmNewCom").serialize(), function() {
// this will run once returned from PHP
alert('thanks');
$pcal(this).dialog("close");
});
这会使用.post()以序列化格式(id
,其中1,2和3是您在表单中输入的值)发布表单(frmNewCom
= newComName=1&newComLefthead=2&newComName=3
)和.serialize()
然后在test.php
中,您可以像这样访问您的值:
$newComName = $_POST['newComName'];
$newComLefthead = $_POST['newComLefthead'];
$newComName = $_POST['newComName'];
// insert into table
以上是a)未经测试且b)如果您想将其存储在数据库中,则不包含对SQL injection的任何预防