Очистить данные в CakePHP - PullRequest
       4

Очистить данные в CakePHP

1 голос
/ 07 сентября 2010

Я хочу очистить данные в CakePHP, но я столкнулся с проблемой.У меня есть форма с полем даты.Когда я попытался очистить все данные, дата теряет свой формат mysql и сохраняется в БД как данные для мусора (1970-01-01), но если я удаляю sanitize, она работает нормально

, я попробовал следующее

 function beforeSave() 
    {
       $this->data = Sanitize::clean($this->data);
       return true;
    }

Я тоже пробовал это, и это работает, но это побеждает цель

function beforeSave() 
{

   $date = $this->data['Cabinet']['date_of_inspection'];        
   $this->data = Sanitize::clean($this->data);
   $this->data['Cabinet']['date_of_inspection'] = $date;
   return true;
}

Каков выход

Ответы [ 2 ]

7 голосов
/ 07 сентября 2010

С CakePHP Руководство :

CakePHP уже защищает вас от SQL-инъекция, если вы используете ORM CakePHP методы (такие как find () и save ()) и правильное обозначение массива (т.е. массив ('field' => $ value)) вместо сырой SQL. Для санации против XSS как правило, лучше сохранять сырой HTML в базе данных без изменений и дезинфицировать во время выход / display.output / дисплей.

1 голос
/ 08 сентября 2010

$this->data = Sanitize::clean($this->data, array('encode' => false) решил проблему.Я согласен с тем, что говорит Джамал Азиз / Cakephp

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...