建议:带有分页的PHP HTML问卷表单

时间:2015-03-09 04:15:58

标签: php html forms pagination

我的任务是创建一个(很长的)问卷表单,并将响应保存到SQL数据库中。我想把它分成更容易消化的块 - 我的想法是使用分页。例如。 1页用于个人详细信息,第2页用于反馈主题#1,第3页用于反馈主题#2等。

我使用分页来从带有过滤器的数据库中读取。我用表单写入数据库;但是我很难设法概念化如何对html表单进行分页,并且只在整个表单完成后提交($ _POST)数据(我可以看到导航到不同的页面将丢失任何表单信息)。随着新问题的增加,旧问题被删除,调查问卷的大小将随时间变化。

到目前为止我的想法: a)完成每个页面后写入数据库,如果用户想要返回该页面,重新读取信息,预先填写字段,允许他们编辑... b)按下NEXT按钮后,使用$ _SESSION变量存储页面的每个字段,并在表单的最后只调用$ _POSTing,调用所有会话变量。虽然我怎么可能构造这个最终的$ _POST语句我不确定,但我从未在$ _POST语句中使用会话变量。

我倾向于只使用HTML,CSS和PHP - 主要是因为我对JavaScript,AJAX等的经验很少。

有没有人有使用HTML和PHP创建这样的分页表单的经验?任何建议都将不胜感激。

谢谢

1 个答案:

答案 0 :(得分:2)

如果你在其中添加jquery会更容易,因为你不熟悉jquery ..这是你的快速代码:

<script src="https://code.jquery.com/jquery-1.11.2.js"></script>
<form>
    <div id="first">
        personal details
        <input type="text">
        <input type="text">
    </div>

    <div id="second" style="display:none">
        feedback on topic #1
        <input type="text">
    </div>

    <div id="third" style="display:none">
        feedback on topic #2
        <input type="text">
        <input type="submit">
    </div>
</form>
<br><br>
<div id="page_menus">
    <a id="get_first" style="cursor:pointer">1</a>
    <a id="get_second" style="cursor:pointer">2</a>
    <a id="get_third" style="cursor:pointer">3</a>
</div>

<script>
    $('#get_first').click(function(){
        $('#first').show()
        $('#second').hide()
        $('#third').hide()
    })
    $('#get_second').click(function(){
        $('#first').hide()
        $('#second').show()
        $('#third').hide()
    })
    $('#get_third').click(function(){
        $('#first').hide()
        $('#second').hide()
        $('#third').show()
    })
</script>

它首先隐藏第二个和第三个div,在单击页码时使用jquery显示它。它非常简单,只需修改代码

即可

demo