新しいレコードを作成するには、__constructオプションを使用する必要がありますか?以下は私が「コース」と呼んだクラスです。私は実際には、時間の25%のコースを「作成」するだけで、残りの時間はコースを検索したいと思うでしょう。PHP OOP:コンストラクトを使用して新規レコードを作成する
class Course {
private $db;
function __construct($db, $data) {
global $error, $mysqli;
$this->db = $db;
requireOrError($data['course_type_id'], "Course Type Required");
requireOrError($data['instructor_id'], "Instructor Required");
requireOrError($data['dz_name'], "DZ Name Required");
requireOrError($data['dz_address'], "DZ Address Required");
requireOrError($data['dz_city'], "DZ City Required");
requireOrError($data['dz_state'], "DZ State Required");
requireOrError($data['dz_zip'], "DZ Zip Required");
requireOrError($data['dz_email'], "DZ Email Required");
requireOrError($data['start_date'], "Course Start Date Required");
requireOrError($data['end_date'], "Course End Date Required");
requireOrError($data['student_slots'], "Number Of Student Slots Required");
if(! is_numeric($data['student_slots'])) {
$error[] = "Invalid Student Slots - Must be a number";
}
setError($error);
if(empty($error)) {
$add = $mysqli->query("INSERT INTO " . $this->db['courses'] . " (course_type_id, instructor_id, dz_name, dz_address, dz_city, dz_state, dz_zip, dz_email, start_date, end_date, student_slots, notes) VALUES ('$data[course_type_id]', '$data[instructor_id]', '$data[dz_name]', '$data[dz_address]', '$data[dz_city]', '$data[dz_state]', '$data[dz_zip]', '$data[dz_email]', '$data[start_date]', '$data[end_date]', '$data[student_slots]', '$data[notes]')");
redirectTo("instructors.php");
}
}
}
私はIDを渡すことができ、それがコースのオブジェクトを返します「getCourseInfo」と呼ばれる関数を作成するつもりでした。これを行うにはこれが最善の方法か、または作成する__constructの動作を変更する必要があります。また、私はどのように私は/ルックアップを作成するかの例を私に与えることができますか?
ありがとうございます!
レコードを挿入したい。単純にコンストラクタで基本的なセットアップを行ってから、 "createRecord"メソッドと "validateData"メソッドを提供するのはなぜですか? –