如何根据答案显示每个问题的结果

时间:2019-04-03 17:22:28

标签: javascript php html phpmyadmin

我对编程还是很陌生,需要为我的网站项目创建测验功能,并且需要在用户回答每个问题后显示结果。

例如,问-您定期运动吗?如果用户回答是或否,它将存储答案并转到下一个问题,最后,当用户点击提交时,它将显示与问题有关的所有信息,具体取决于用户是回答“是”还是“否”。

我已经在phpmyadmin中为问题和问题ID设置了表格,我是否需要单独的表格来获得答案?还是我最好对问题进行硬编码并仅存储答案?

我的网站使用Apache在localhost上运行,我的数据库在phpmyadmin上与用户等一起建立。我的大多数功能都在使用php。根据我在网上发现的大多数测验功能,都使用javascript,而且我对该语言不太熟悉,因此欢迎您提出任何建议。

我希望能够将答案存储在数据库中,以便当用户登录信息时就可以找到答案。感谢您提供任何帮助,因为我的编码技能并不出色。

下面是我如何仅使用html来设置atm的方法,但不确定如何添加php或javascript等

<div class="col-md-6">
            <form>
                <h4>Did they have any social media accounts</h4>
                <div class="help-tip">
                <p>Such as facebook, instagram, twitter, snapchat etc</p>
                </div>
                <div class="form-check">
                    <label>
                        <input type="radio" name="radio" checked> <span class="label-text">Yes</span>
                    </label>
                </div>
                <div class="form-check">
                    <label>
                        <input type="radio" name="radio"> <span class="label-text">No</span>
                    </label>
                </div>
            </form>
</div>

<div class="col-md-6">
            <form>
                <h4>Where they the main name on utility bills?</h4>
                <div class="help-tip">
                <p>Bills such as electricity, oil, telephonee, internet</p>
                </div>
                <div class="form-check">
                    <label>
                        <input type="radio" name="radio" checked> <span class="label-text">Yes</span>
                    </label>
                </div>
                <div class="form-check">
                    <label>
                        <input type="radio" name="radio"> <span class="label-text">No</span>
                    </label>
                </div>
            </form>
</div>

2 个答案:

答案 0 :(得分:0)

根据您将来的计划和问题的数量,可能最好将那些问题(可能还会给出答案?)存储在数据库中,因为这使您将来有更大的灵活性来更改这些问题。根据这些问题全部是/否还是可能的答案不同,也许创建另一个表,将可能的答案映射到问题。
由于每个问题可以由不同的用户多次回答,依此类推,您应该创建另一个表来回答问题。在这种情况下,将一个问题存储在一行中听起来从我的角度来看是最好的解决方案(可能不是:D) 。它将具有answer_set_id并将其绑定到一个answer_set(以及可能具有id,user_id以及可能包含时间的user,answer_set表),这取决于数据的数量和类型以及您打算如何处理它

答案 1 :(得分:0)

我建议您做类似的事情,创建一个user表,该表将保留用户登录内容(例如,id,name,pass),如果您的项目要公开哈希密码并保护您的针对MySQL注入和跨站点脚本的站点,如果您只是在学习,请不要担心。

此后,我将为答案创建另一个数据库,因为问题将永远相同,因此其结构将类似于:

id |问题回答| user_id

用户ID是回答问题的用户的ID,并且必须是外键。

然后,当用户完成回答问题或仅想查看结果时,您只需在数据库中获取有关答案的信息,然后使用PHP显示基于该答案的信息。

如果您需要将MySQL与PHP结合使用的任何帮助,请查看PHP.net中的mysqli和PDO页面,这对我有很大帮助:

https://www.php.net/manual/en/book.pdo.php https://www.php.net/manual/en/book.mysqli.php