Php 编程初学者-设计web应用程序的建议
我做一些HTML/CSS是为了好玩,但我正在学习一些编程技巧 我一直在阅读PHP和MySQL。到目前为止,我还不觉得理解循环、条件语句等概念太难,但我想在我对阅读感到厌倦并完全放弃之前就开始开发应用程序 我的想法 我现在正好在准备考试,而且这些练习考试都在纸上。我想为什么不把它放到一个应用程序里,这样我就可以在电脑上参加考试了 特点:Php 编程初学者-设计web应用程序的建议,php,mysql,database-design,Php,Mysql,Database Design,我做一些HTML/CSS是为了好玩,但我正在学习一些编程技巧 我一直在阅读PHP和MySQL。到目前为止,我还不觉得理解循环、条件语句等概念太难,但我想在我对阅读感到厌倦并完全放弃之前就开始开发应用程序 我的想法 我现在正好在准备考试,而且这些练习考试都在纸上。我想为什么不把它放到一个应用程序里,这样我就可以在电脑上参加考试了 特点: 该应用程序可以容纳多个考试 它可以随机化问题或按顺序显示问题 可以选择显示每个问题的答案 计算完成考试的持续时间 添加新考试和问题/答案的管理页面 好了,你们
- 该应用程序可以容纳多个考试
- 它可以随机化问题或按顺序显示问题
- 可以选择显示每个问题的答案
- 计算完成考试的持续时间
- 添加新考试和问题/答案的管理页面
如何在数据库模式中表示一个考试的实例?考试和问题的关系将是一对多的,因为问题对于单个考试来说是唯一的。但是,既然我的目标是要有多个考试,我该如何表示呢?在我看来,这里最重要的是数据库的结构。你会想了解一些关于db设计和规范化的知识。基本上,您需要在逻辑上规划应用程序中存在的不同实体:
无论您决定构建什么应用程序,它都会一直为您服务。好的,首先,欢迎:) 第二:你的想法一点也不愚蠢,事实上,你选择了学习编程的最佳方式:做一些有用且有趣的事情 进入你的问题:为什么你需要连续的ID来回答这些问题?在数据库方面,您只需要每行有不同的ID 如果是显示要求,为什么不在显示期间在循环上指定一个数字?因此,例如,当您对每个问题执行
foreach
显示时,您可以保留一个索引变量,在每个循环中递增,并使用该变量显示序号
希望这就是你要找的,祝你好运 一个特定的应用程序是学习编程的一个很好的方法,即使这样的应用程序已经存在(它们确实存在——但我会避免看那些,只是创建和学习!) 您的规格之一是,问题可以以任何顺序显示。另一个原因是它们可以被移除。因此,很明显,编号与问题没有直接关系——一旦确定了问题集及其在测试中的顺序,就应该动态生成编号。您需要仔细考虑这些需求,它们为组件的设计提供了基础。用户界面应与程序逻辑隔离,程序逻辑应与问题数据库隔离。尽量以最原始的形式在这些部分之间传递信息。这样,当你想重新设计其中一个图层时,你就不必改变整个图层 如果我的考试由50个问题组成,每个问题都有一个ID。如果我删除了一个问题,如何用新ID更新其余的问题?也就是说,如果我删除问题3,以下所有问题都需要将其ID向后移动1 主ID永远不会改变。当您删除表中的一行时,相应的主ID将消失,但其他行主键不应重新编号
如果您决定使用Rails,请查看Ryan Bates优秀的屏幕广播网站。我同意所有其他答案,实现一个有用的应用程序是学习web开发的好方法。但是,正如Jonathan所说,您计划构建的不是一个非常简单的应用程序。也就是说,以下是我的想法: RubyonRails是Ruby的框架。它还可以利用MySQL。PHP是一种编程语言(ruby代表RoR),不提供任何框架。但是,PHP有很多,或者仅举几个例子。 框架以灵活的方式实现应用程序的常用方面,因此它们可以用于各种应用程序。其中一些方面可能是身份验证、数据库访问、缓存、模板呈现等。