PHP表单 - 搜索脚本来搜索文本文件,找到匹配项

时间:2016-03-15 01:12:19

标签: php forms full-text-search

我对PHP非常陌生,并认为我已经走上正轨了。

  • 在我的index.php表单中,用户将在输入框中输入他们的名字和与之关联的数字。
  • 然后他们会从下拉列表中选择他们想要的课程。
  • 一旦他们点击了提交按钮,我需要记下他们的名字,看看他们是否已经注册,以及该课程是否达到最大容量。
  • 学生信息位于student.txt,即Mike Wazowski:PX-68-524(学生姓名和号码)。
  • 课程信息位于course.txt,即Animation Film Design:AFD-250:6(课程名称和编号以及最大容量)。
  • 搜索将在enrollment.txt中,其中包含课程编号和学号。它将查看学生编号是否已存在于文件中,如果不是,他们可以在课程不是最大容量时注册。

谢谢。

$datafile = 'enrollment.txt';
// If selection has been made, find a match
 if (isset ($_POST['studentnumber'])) {
    $student = htmlentities ($_POST['studentnumber']);
    $DB = fopen ($datafile, 'r') or die ("$datafile cannot be opened for reading.");
    $found = FALSE;
    while ($record = fgets ($DB) and ! $found) {
       $field = explode (":", htmlentities (trim ($record)));
       $found = $student === $field[1];
    }
    fclose ($DB);
    if ($found) {
       echo "<p>$field[3] $field[1]</p>\n";
    }
 }

$DB = fopen ($enrollfile, 'r') or die ("$enrollfile cannot be opened for reading.");
while ($record = fgets ($DB) ) {
    $field = explode (":", htmlentities (trim ($record)));
    echo "<option value=\"$field[3]\">$field[3] $field[1]</option>\n";
}
fclose ($DB);

1 个答案:

答案 0 :(得分:0)

你为什么不去找数据库?它很有效率。当数据很大时,文件会变慢。