wordpress:从表单中提交的数据仅取决于重定向网址

时间:2017-08-02 09:29:37

标签: php wordpress forms redirect

我阅读了很多帖子,谈论表单提交后有关重定向的问题,但我没有找到任何似乎可以解决我的问题。

我用wordpress创建了一个测验网站。 每个single.php模板都包含一个问题。 我使用表单发布用户选择的数据(在数据库中)。 我使用表单的action属性重定向到下一个帖子(下一个问题)。到目前为止一切正常,数据存储在数据库中,用户被重定向到下一篇文章。 但是当我到达上一篇文章时,我已经设置了重定向到特定页面的条件。重定向工作得很好,但最后一个问题的数据没有在我的数据库中提交......

这是我的代码:

<?php $redirect_url = 0;
    if ($currentID !== $nextID):
        // NEXT POST
        $redirect_url = get_permalink($nextID);
    else:
        // SPECIFIC PAGE (END QUIZ)
        $redirect_url = get_permalink(24);
    endif; 
?>

<form method="post" action="<?php echo $redirect_url; ?>" id="stat_form" class="hidden">
    <input type="radio" name="choice" id="c1" value="1">
    <input type="radio" name="choice" id="c2" value="2">
    <input type="number" name="replay" id="replay" value="<?php echo strip_tags($_POST['replay']); ?>">
    <input type="number" name="question_id" id="question_id" value="<?php echo $currentID; ?>"/>
    <input type="submit" name="submit_form" value="submit" />
</form>

<?php 
// SAVE INFO IN DATABASE
// ---------------------
if ( isset( $_POST["submit_form"] ) ) {
    $table = $wpdb->prefix."stats_questions";
    $question_ID = strip_tags($_POST['question_id']);
    $choice = strip_tags($_POST['choice']);
    $replay = strip_tags($_POST['replay']);
    $wpdb->insert( 
        $table, array( 
            'question_ID' => (int) $question_ID,
            'choice' => (int) $choice,
            'replay' => (int) $replay,
        )
    );
}
// ---------------------
?>

0 个答案:

没有答案