コンピュータ技術の発展に伴い、プログラミングは人々にとってますます一般的なニーズとなっています。学生であろうとプロのプログラマーであろうと、コードを書くことは仕事の重要な部分です。オンライン評価システムは、プログラミングの正確さと効率をテストするための重要なツールです。 PHP はこの機能の実現に役立ちます。この記事では、PHPを使用してオンライン評価システムを実装する方法を紹介します。
オンライン評価システムのアーキテクチャ設計は非常に重要です。本システムは、表示層、ビジネスロジック層、データアクセス層の3層アーキテクチャ設計を採用しています。このうち、プレゼンテーション層はユーザーに表示される部分であり、ビジネス ロジック層にはユーザーが送信した質問を処理して結果を返すロジックが含まれ、データ アクセス層はデータの保存とアクセスを担当します。
2.1 データベースの作成
まず、データベースを作成する必要があります。データベースには、質問の内容、テスト データ、ユーザーが送信したコードなどの情報を含む複数のテーブルが含まれています。このシステムでは、MySQL データベースを使用します。以下の MySQL ステートメントを参照してください。
CREATE DATABASE OnlineJudge
DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE TABLE 問題
(
id
int( 11) NOT NULL AUTO_INCREMENT,
title
varchar(128) NOT NULL,
description
text NOT NULL,
input
text NOT NULL ,
output
テキスト NOT NULL,
sample_input
テキスト NOT NULL,
sample_output
テキスト NOT NULL,
hint
text NOT NULL,
time_limit
int(11) NOT NULL,
memory_limit
int(11) NOT NULL,
主キー ( id
)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8;
CREATE TABLE Solution
(
id
int(11) NOT NULL AUTO_INCREMENT,
problem_id
int(11) NOT NULL,
user_id
int(11) NOT NULL,
code
テキスト NOT NULL,
result
varchar(32) NOT NULL,
create_time
datetime NOT NULL,
主キー (id
)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8;
2.2 ユーザー ログインと登録ページ
ユーザー ログインと登録ページは必須のコンポーネントです。 PHP では、フォームとデータベースを使用してこれら 2 つのページを実装できます。ユーザー登録情報は、その後のユーザーのログイン情報の検証のためにデータベースに保存されます。
2.3 質問リスト ページ
質問リスト ページには、すべての質問と、質問の難易度や合格率などのいくつかの基本情報が表示されます。ユーザーはトピックのタイトルをクリックしてトピック表示ページにアクセスできます。
2.4 質問表示ページ
質問表示ページでは、質問の説明、入出力形式、サンプルと提出フォームなど、この質問の詳細情報が表示されます。
2.5 フォーム送信ページ
上記のページの導入後、このシステム送信フォーム ページのコア モジュールに入ることができます。このページでは、ユーザーはコードを送信し、プログラミング言語や認識間隔などを選択できます。このとき、PHP はユーザーが提出したコードとテストデータを評価マシンに渡し、フィードバック結果を待ちます。
2.6 評価ページ
評価ページは、評価、時間、メモリ使用量などを含む評価結果の表示ページです。 PHP は、ユーザーが送信した最新の結果をデータベースから取得し、ユーザーに表示します。
システム全体を開発した後、システムをオンラインにしてテストする必要があります。この時点で、複数のユーザーのログインをシミュレートし、コードを送信してシステムのパフォーマンスとセキュリティを検証する必要があります。システムが正常に動作することを確認した上で、公開してご利用いただけます。
結論
この記事では、PHP を使用してオンライン評価システムを実装する方法を紹介します。データベースの設計からページ機能の実装まで、システム開発の主要な側面をすべてカバーしています。もちろん、実際のニーズに応じて修正したり、より完璧なオンライン評価システムを実現したりすることもできます。
以上がPHPはオンライン評価システムを導入していますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。