Jag kommer att ha genomgång av mina exempel nedan och då kommer jag att förklara följande:
När ni har fått kläm på hur detta fungerar så kommer ni förhoppningsvis se vissa fördelar med att använda er av denna kunskap. Till att börja med så kommer jag att tvinga er till vissa saker, se nedan.
Du skall göra följande:
När du är klar och känner dig nöjd med det du har gjort så säger du till mig så skall jag kolla om du har utnyttjat fördelarna med objektorienterad programmering på ett godkänt sätt. Det skadar inte att du kollar över din index.php och jämför den med min index.php och min setup.php.
// lite kod från forumController if($_POST['a']=='InsertItem') { if (!$_POST['Item']) { $session->AddError('You can\'t post empty item...'); header ('location: ' . INDEX . '?c=' . $_GET['c'] . '&a=' . $_GET['a']); exit(); } $data = array ( 'Item' => $_POST['Item'], 'UserID' => $session->Get('UserID'), 'ThreadID' => $_POST['ThreadID'] , 'CreateDate' => date('Y-m-j H:i:s'), 'ChangeDate' => date('Y-m-j H:i:s') ); $forum->InsertItem($data); $session->AddSuccess('Item saved!'); header ('location: ' . INDEX . '?c=' . $_GET['c'] . '&a=' . $_GET['a'] . '&id=' . $_POST['ThreadID']); exit(); } // lite kod från forum.php (model_forum) public function InsertItem ($data) { $this->table='lab5_Items'; return $this->Insert($data); } public function DeleteThread ($threadid) { $query = "DELETE lab5_Threads, lab5_Items FROM `lab5_Threads` LEFT JOIN `lab5_Items` USING(ThreadID) WHERE ThreadID = '" . $_POST['ThreadID'] . "' AND (lab5_Threads.UserID = '" . service_session::getInstance()->Get('UserID') . "' OR " . service_session::getInstance()->Get('Admin') . ")"; return $this->db->Delete($query); }