在线招生系统

时间:2013-08-12 21:06:28

标签: php mysql relationships

我正在使用mysql和php的在线招生系统。

我需要保存申请人的个人和学术细节。到目前为止,我创建了一个表来保存个人详细信息,其中申请人ID(自动增量)作为主键。但对于学术细节我有点困惑。学术细节所需的字段是:

Degree Level (like Master, Bachelor, high school);
Roll No;
Subjects; 
Grade;
Institution;
Percentage;
Degree image (image field to save scanned copies of transcripts).

我不知道如何将这两个表联系起来。上传图像文件(成绩单的扫描副本)是否会影响数据库性能?

2 个答案:

答案 0 :(得分:0)

你将有2张桌子

申请人

Id | Name | Address | etc, etc

AcademicDetails

Id | ApplicantId | Degree | RollNo | DegreeImageUrl | etc, etc

列出所有申请人

SELECT * FROM Applicants

按名称搜索特定申请人。

SELECT * FROM Applicants WHERE name = 'Tom Jones'

选择申请人ID = 1并且所有学术详细信息都使用联接

SELECT * FROM Applicants JOIN AcademicDetails ON AcademicDetails.ApplicantId=Applicants.Id
 WHERE Applicants.Id = 1

答案 1 :(得分:0)

您可以拥有一个单独的表格,其结构类似于以下内容,可以容纳您需要的所有各种类型的图像:

documents
--------------------
| id, INT AUTOINCREMENT
| applicant_id, INT
| type, VARCHAR(255)
| url, VARCHAR(255)
--------------------

applicant_id指的是文档所属的申请人。 type字段可以是degreetranscript之一,也可以是您支持的任何其他类型的文档。最后,url字段将包含图像的位置。最好是,您应该有一个PHP表单,将图像上传到服务器上的目录,然后将记录添加到documents表中,与用户刚刚上传的内容相关。