Показать сообщение отдельно
  #5 (permalink)  
Старый 11.09.2016, 07:31
Профессор
Отправить личное сообщение для warren buffet Посмотреть профиль Найти все сообщения от warren buffet
 
Регистрация: 08.07.2016
Сообщений: 1,332

В нормальном коде можно сделать вот так

Class SqlQuery(){

   private $get;
   private $q;
   
   public function __construct($q){
      $this->get=$_GET;
      $this->q=$q;
   }

   public function query($q){
     
     return
     ($q?)$q:$this->q.
     $this->search().
     $this->where().
     $this->limit().
     ';';

   }

   private function search(){
      if(isset($this->get['text'])) {
        $text=mysqli::real_escape_string($this->get['text']);
        return ' `text` like "%'.$text.'%"';
      }
     else
       throw new _Exception();
   }

   private function where(){
      if(isset($this->get['cat']))
        return ' where `cat`='.mysqli::real_escape_string($this->get['cat']);
   }

   private function limit(){
      return ' limit 0,20';
   }

}


Ну или вроде того, поскольку это вообще пример.

Последний раз редактировалось warren buffet, 11.09.2016 в 07:34.
Ответить с цитированием