我在页面上有一个功能,如果操作等于'添加'则会将用户带到另一个页面。我现在想创建一个按钮,它可以为我执行此操作而无需键入& action = add到url。
该功能如下所示:
function consultants_page() {
if (isset($_GET['action']) && $_GET['action'] == 'add') {
require( get_template_directory() . '/settings/pages/consultant_add.php' );
}else {
require( get_template_directory() . '/settings/pages/consultant.php');
}
}
然后我需要修改此按钮以链接到此功能,但它目前还没有工作..
<form method="get" action="add">
<p class="submit"><input type="submit" name="add" id="submit" class="button button-primary" value="Add"></p>
</form>
欢呼声
答案 0 :(得分:0)
这样的事情会发送变量&#34; action&#34;到网址:
<form method="get" >
<p class="submit"><input type="submit" name="action" id="submit" class="button button-primary" value="add"></p>
</form>
使用您的html发送add?add=Add
。
您的PHP代码应该使用$_GET["action"]
获取变量。
答案 1 :(得分:0)
使用$_POST
代替$_GET
,这样价值就不会出现在网址中。
function consultants_page() {
if (isset($_POST['action']) && $_POST['action'] == 'add') {
require( get_template_directory() . '/settings/pages/consultant_add.php' );
}else {
require( get_template_directory() . '/settings/pages/consultant.php');
}
}
HTML
<form method="post" action="add">
<p class="submit"><input type="submit" name="add" id="submit" class="button button-primary" value="Add"></p>
</form>
不要忘记清理用户输入。