我有一个页面,我希望用户能够发布信息,然后我上传到数据库。我通过ajax处理请求,并试图通过一个动作挂钩建立数据库连接和sql查询。首先,这是一个好的做法吗?
我的代码(相关部分):
HTML:
<div id="user_info">
<input class="form-control" type="text" id="name" placeholder="Fullständigt namn" required autocomplete="off"/>
<input class="form-control" type="text" id="email" placeholder="Email" required autocomplete="off"/>
<input class="form-control" type="text" id="address" placeholder="Adress" required autocomplete="off"/>
<input class="form-control" type="text" id="co_address" placeholder="C/O Adress" autocomplete="off"/>
<input class="form-control" type="text" id="city" placeholder="Namn" required autocomplete="off"/>
</div>
JS公司:function updateDB(name, email, address, co_address, city){
$.ajax({
url: \'/wp-admin/admin-ajax.php\',
type: \'post\',
dataType: \'json\',
data: {
action: \'det_lilla_extra\',
name: name,
email: email,
address: address,
co_address: co_address,
city: city
},
});
PHP(动作挂钩):<?php
add_action(\'wp_ajax_det_lilla_extra\', \'det_lilla_extra\');
add_action( \'wp_ajax_nopriv_det_lilla_extra\', \'det_lilla_extra\' );
function det_lilla_extra(){
global $wpdb;
//var_dump($_POST);
$wpdb->insert($wpdb->prepare("INSERT INTO orders (name, email, address, co_address, city) VALUES (\'%s\',\'%s\',\'%s\',\'%s\',\'%s\')",
$_POST[\'name\'], $_POST[\'email\'], $_POST[\'address\'], $_POST[\'co_address\'], $_POST[\'city\']));
wp_die();
}
通过关注和观察其他人,我已经能够做到这一点。但我现在的问题是,为了让我的动作挂钩工作,我需要创建一个插件。我不知道该怎么做,我一直在谷歌上搜索turorials,但我真的不知道该找什么,所以很难确定该怎么做。所以我的问题是:
这是我所做的“好”实践吗?我可以用另一种方法来做吗(关于数据库连接的操作挂钩)
我需要一个插件吗?如果是这样,我该如何着手创建它?
另外:由于我没有启用插件(我想这就是原因),目前我的动作挂钩无法工作。但其他一切都应该奏效。