[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: PHP класс для рисования HTML форм
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
Игорь_Vasinsky
эээ... комменты старые остались))) часть не актуальны

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Oyeme
Наследование класса вообще не понятно для чего,с такой же логикой можно было бы все в один класс пихнуть.

Говно-код
<?=$form['begin'];?> 
<?=
$form['my_login'];?> <?=isset($errors['my_login']) ? $errors['my_login'] : null;?><br />
<?=$form['email'];?> <?=isset($errors['email']) ? $errors['email'] : null;?><br />
<?=$form['my_password'];?> <?=isset($errors['my_password']) ? $errors['my_password'] : null;?><br />
<?=$form['my_password2'];?> <?=isset($errors['my_password2']) ? $errors['my_password2'] : null;?><br />
<?=$form['capcha'];?> <?=isset($errors['capcha']) ? $errors['capcha'] : null;?><br/>
<?=$form['send'];?><br />
<?=$form['end'];?>


         switch($v){
case 'notempty' :
$this->_empty($nameTag);
break;
case 'length':
if($tv != null)
$this->_length($nameTag, $tv);
break;
case 'trim' :
$this->_trim($nameTag);
break;
case 'html' :
$this->_html($nameTag);
break;
case 'email' :
$this->_email($nameTag);
break;
case 'confirm' :
$this->_confirm($nameTag,$tv);
break;
case 'regexp' :
$this->_regexp($nameTag,$tv);
break;
case 'code' :
$this->_code($nameTag,$tv);
break;
case 'id' :
$this->_id($nameTag);
break;
case 'float' :
$this->_int($nameTag);
break;
case 'string' :
$this->_int($nameTag);
break;
case 'sha1' :
$this->_int($nameTag);
break;
}


Ужасная привязанность к гломальным переменным.
(Их вообще использовать запрещено,если только не в говно коде)

 protected function _empty($nameTag){
if(empty($_REQUEST[$nameTag]))
$this->errors[$nameTag]['notempty'] = $this->text_error['notempty'];
else
$this->insertData($nameTag);
}



Все методы принимают массивы,обекты,все что угодно,что вызовет ошибку.

private function insertData($nameTag){
$this->data[$nameTag] = $_REQUEST[$nameTag];
}



Метод вызовет кучу ошибок.
-Если нет ключей в глобальных массивах.
-Если подать массив или объект как аргумент.
-Название метода "многое может рассказать о себе"

protected function _code($nameTag, $tv){
// if(!isset($_SESSION[$tv])) return;

if($_SESSION[$tv] != $_REQUEST[$nameTag])
$this->errors[$nameTag]['code'] = $this->text_error['code'];
else
$this->insertData($nameTag);
}


Остальное комментировать не буду,класс просто ужасный.

Все в кучу,там где нужно использовать константы - Вы их игнорирует.
Понимаю ОПП Вы не понимаете,но можно же на процедурном языке сделать красивый и читаемвый код,а не говно код.

Я понял что Вы так же пишите не только с применениями ООП но и на процедурном стиле,Ваш стиль "очень грязный."
Программисту поддерживающиму Ваш, код в будущей,не по завидую.

Вам лучше писать на процедурном стиле,так как Вы не слушаете советов которые Вам дают.
Я бы Вам посоветовал,научиться писать на процедурном стиле для начало,а уже потом переходить на ОПП.

Миллионы статей,литературы,примеров в интернете и Вы этим не пользуетесь.

Программист пишет код не для себя - а для других.Это золотое правило.

Я думал Вы исправите Ваш код или попытаетесь исправить,и сделаете его лучше,чище,красивее,но Вы проигнорировали все возможные советы.

Больше комментировать не буду,так как У Вас нет желания учиться.

Цитата
Каждый дурак может написать код, понятный компьютеру. Хорошие программисты пишут код, понятный людям.
»
— Мартин Фаулер

А если мы не учимся,то мы стоим на месте.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.