所以,我正在 Wordpress 中的自定義主題中進行自定義注冊,我已經使用相同的方法登錄,并且它作業得很好,但由于某種原因注冊不起作用,因為當請求在 /registration 上提交時/ 到 /registration/ $_POST 不起作用。
我的代碼
<?php
/*
Template Name: Registration
*/
?>
<?php
global $wpdb, $user_ID;
if ($_POST) {
// GETTING VALUES
// VALIDATION
// Creating user if no errors
}
get_header();
?>
<form class="form" method="POST" action="<?php echo $_SERVER['REQUEST_URI']" />
// FORM STUFF
</form>
?>
為了最小的例子,我洗掉了 $_POST 條件中的代碼,因為它被執行了。POST 請求被發送到正確的 URl,但回傳 404。將 GET 請求發送到相同的 URL 會導致顯示該頁面,這是應該的。有任何想法嗎 ?
uj5u.com熱心網友回復:
這是因為 $_POST 本身的真值是假的,即使它里面有值。例如,如果您將執行以下操作
<?php var_dump( $_POST === true ); ?>
該程式將回傳一個false.
您應該改為測驗以下命題:
<?php
if( isset( $_POST ) ){
// Your code here if form is submitted.
}
?>
我也注意到表單屬性有一些錯誤,應該是
<form class="form" method="POST" action="<?php echo $_SERVER['REQUEST_URI']; ?>" >
</form>
代替
<form class="form" method="POST" action="<?php echo $_SERVER['REQUEST_URI']" />
// FORM STUFF
</form>
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/345949.html
標籤:php WordPress的 wordpress 主题 自定义wordpress-pages
上一篇:如何在wordpress.com帖子中嵌入pdf?為什么<iframe>,<embed>,<object>不起作用/從帖子中消失
