我在第二页上制作自定义表单插件操作时遇到问题。
我有一个插件文件夹名称demo1,其中有两个不同的页面,例如alert.php
和demo1.php
我在demo1.php
上添加了一个表单,我想在alert.php
上处理此表单,其中已声明了数据库插入查询。
这是代码
demo1.php
function alert_options()
{
echo '<div class="wrap">
<h2>Alert</h2>
<form method="post" action="<?php echo get_admin_url()."admin-post.php"; ?>">
<input type="hidden" name="action" value="submit-form" />
<input type="hidden" name="title" value="test" />
<input type="hidden" name="content" value="test" />
<p><input type="submit" name="Submit" value="Save Alert" /></p>
</form>
</div>';
}
alert.php
add_action('admin_post_submit-form', '_handle_form_action');
function _handle_form_action()
{
global $wpdb;
$title=$_POST['title'];
$content=$_POST['content'];
$data=array('title'=>$title,'content'=>$content);
$wpdb->insert( 'wp_alerts', $data);
}
答案 0 :(得分:0)
你做得对,
在demo1.php上包含alert.php文件路径
像这样......demo1.php
<?php
// Include alert.php file
include_once 'alert.php';
function alert_options() { ?>
<div class="wrap">
<h2>Alert</h2>
<form method="post" action="<?php echo get_admin_url()."admin-post.php"; ?>">
<input type="hidden" name="action" value="submit-form" />
<input type="hidden" name="title" value="test" />
<input type="hidden" name="content" value="test" />
<p><input type="submit" name="Submit" value="Save Alert" /></p>
</form>
</div>
<?php } ?>
alert.php
<?php
add_action('admin_post_submit-form', '_handle_form_action');
function _handle_form_action(){
global $wpdb;
$title=$_POST['title'];
$content=$_POST['content'];
$data=array('title'=>$title,'content'=>$content);
$wpdb->insert( 'wp_alerts', $data);
// redirect after insert alert
wp_redirect(admin_url('admin.php?page=test-url'));
die();
}