Przedstawię Wam mój krótki kod formularza napisanego OPP. Form jest samo przetwarzający się, posiada też krótką walidację, odnośnie tego, czy wartości podane przez użytkownika są liczbami. Ten formularz ma tylko jeden cel: chcę się od Was dowiedzieć czy w ogóle zrozumiałem ideę OPP? Chciałbym wiedzieć, czy rozumiem sens tworzenia nowych obiektów i przeprowadzania na nich operacji. Bo nigdy nie wiem, czy operacje mam opisac poza class'a czy w jakies funkcji class'y?
<?php
class Form extends Walidate{
public $arrInputs = array();
public function __construct(){
if($this->checkPost()){
$this->walidatePosts();
}
}
public function addInput($inputType, $name, $value, $inputText){
$input = ''.$inputText.'
';
}
public function setForm($method = 'post', $action = ''){
$s = '';
$s .= '';
foreach($this->arrInputs as $value ){
$s .= \"$value\n\";
}
$s .= '';
return $s;
}
}
class Walidate{
public function checkPost(){
foreach($_POST as $value){
if(!$value)
return FALSE;
}
return TRUE;
}
public function walidatePosts(){
foreach($_POST as $value){
if(!ereg('^[0-9] , $value)) die('Podane wartości nie są liczbami!');
}
$numbers = implode(', ', $_POST);
echo \"Podane wartośc: $numbers są liczbami.\";
}
}
echo 'Proszę podać dwie wartości, które są liczbami.
';
$showForm = new Form();
$showForm->addInput('text', 'Tpierwszy', '', 'Pierwsza wartość');
$showForm->addInput('text', 'Tdrugi', '', 'Druga wartość);
echo $showForm->setForm(); ?>