gpt4 book ai didi

PHP 条件问题数据结构

转载 作者:行者123 更新时间:2023-11-30 01:15:58 25 4
gpt4 key购买 nike

我正在为一个非营利组织开发一个网络应用程序,我想知道什么是获得以下效果的最佳数据结构:

该应用程序将包括从用户那里获取信息,类似于游戏中的 21 个问题,但不仅仅是"is"或“否”,例如我可以问用户 3 个问题。基于这些答案,将会有另一组 X 问题。这组问题会根据前 3 个问题的答案而有所不同。

这将持续下去,直到应用程序找到答案。

也许就像一棵有很多 Twig 的树。

虽然我在 PHP 和 MySQL 方面的经验有限,但我希望能够想到一种足够灵活的结构,可以拥有许多树分支和许多级别,理想情况下可以将其存储在数据库或其他地方。

任何帮助或想法将不胜感激。

最佳答案

我们通常希望在 SE 这边看到示例和错误消息,但是,将所有这些问题存储在 MySQL 数据库中会相当方便。根据您希望问题如何改变,算法会有所不同。

你可以这样安排,让屏幕上的每个问题都有自己的路线,用ID来控制路线:

  • 问题 1(id 10)|答案 1 (+10) |答案 2 (+20) |答案 3 (+30)
  • 问题 2(id 11)|答案 1 (+20) |答案 2 (+10) |答案 3 (+30)
  • 问题 3(id 12)|答案 1 (+20) |答案 2 (+30) |答案 3 (+10)

如果我们说用户选择 2|3|1:

  • 问题 4(ID 30)
  • 问题 5(id 41)
  • 问题 6(ID 32)

由于第一位数字不同,并且我们仅以 10 为单位递增,因此您每次运行都不会遇到任何重复的问题。


另一种方法是明确定义下一个问题集:

  • 问题 1(id 1)|答案 1 (5) |答案 2 (12) |答案 3 (9)
  • 问题 2(id 2)|答案 1 (7) |答案 2 (16) |答案 3 (18)
  • 问题 3(id 3)|答案 1 (4) |答案 2 (10) |答案 3 (24)

用户再次选择 2|3|1:

  • 问题 4(ID 12)
  • 问题 5(ID 18)
  • 问题 6(id 4)

应用程序的其余部分只需要您运行查询来提取问题,跟踪用户数据(get/post/session/mysql whathaveyou)并将结果保存到数据库(如果这是您想要的)做。在回答完每组问题后,AJAX 可能会非常好地引入下一个问题。

关于PHP 条件问题数据结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19056655/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com