Форум → Программирование → PHP для идиотов → PHP и ООП → непонятки с ООП
непонятки с ООП
Страницы: ← Предыдущая страница • Следующая страница →
-
Янв. 23, 2010, 1:09 д.п., спустя 3 минуты 47 секунд
ок. А как быть в таком случае:
вывод списка сообщений. Справа от сообщения есть кнопка "редактировать" (если ты залогинен под автором сообщения). Как закешировать список этих сообщений?
Усложним задание, и дата сообщения выводится в относительном формате: минуту назад, 5 минут назад. -
Янв. 23, 2010, 1:26 д.п., спустя 16 минут 41 секунду
можешь закешировать скл запроса данные, даты форматирование и тп нихуя не стоят времени
ок. А как быть в таком случае:
вывод списка сообщений. Справа от сообщения есть кнопка "редактировать" (если ты залогинен под автором сообщения). Как закешировать список этих сообщений?
Усложним задание, и дата сообщения выводится в относительном формате: минуту назад, 5 минут назад.Сапожник без сапог -
-
Янв. 23, 2010, 1:49 д.п., спустя 5 минут 52 секунды
ну да, это тоже можно, чтобы поиск роботы мозг не ебли)
и отрендеренные данные для анонимусовСапожник без сапог -
Фев. 5, 2010, 1:04 п.п., спустя 13 дней 11 часов 15 минут
я вот тут пытаюсь до сих пор догнать ооп
написал класс для авторизции, хотя помоему говнокод получился<?php class userEnter { public $login; public $pass; public function get_lp($login,$pass) { $this->login = mysql_real_escape_string(htmlspecialchars(trim($login))); $this->pass = mysql_real_escape_string(htmlspecialchars(trim($pass))); } public function search_DB() { $sql = mysql_query("SELECT * FROM user WHERE login='".$this->login."' AND pass='".$this->pass."'"); if(mysql_num_rows($sql) == 1) { $mas = mysql_fetch_array($sql); return $mas; } } } $obj = new userEnter($login,$pass); $obj->get_lp(); $obj->search_DB(); ?>
Спустя 88 сек.такая фигня бутет работать?? И как мне теперь достать $mas икласса.. как пользоваться? -
Фев. 5, 2010, 1:11 п.п., спустя 6 минут 41 секунду
как по мне то авторизация должна быть у обьекта User
соотвественно должен быть быть класс User а у него метод authorize()Спустя 79 сек.+ обьект User вообще недолжен знать что такое mysql_query.
это задача датабейз адаптера.Спустя 35 сек.И как мне теперь достать $mas икласса.. как пользоваться?
у тебе вообщето метод search_DB() его возвращает…Спустя 102 сек.я вот тут пытаюсь до сих пор догнать ооп
догнать ооп - это не использовать его синтаксис.Спустя 101 сек.и опять же…
именуй методы так, чтоб через год ты открыл свой код и понял что там происходит.
как по мне то search_DB() должен искать базу данных…Спустя 29 сек.а что такое get_lp() я вообще не понял… -
Фев. 5, 2010, 1:14 п.п., спустя 3 минуты 30 секунд
как по мне то авторизация должна быть у обьекта User
соотвественно должен быть быть класс User а у него метод authorize()Спустя 79 сек.+ обьект User вообще недолжен знать что такое mysql_query.
это задача датабейз адаптера.Спустя 35 сек.И как мне теперь достать $mas икласса.. как пользоваться?
у тебе вообщето метод search_DB() его возвращает…Спустя 102 сек.я вот тут пытаюсь до сих пор догнать ооп
догнать ооп - это не использовать его синтаксис.Спустя 101 сек.и опять же…
именуй методы так, чтоб через год ты открыл свой код и понял что там происходит.
как по мне то search_DB() должен искать базу данных…Спустя 29 сек.а что такое get_lp() я вообще не понял…
яж говорю говнокод))
а вот search_DB() у меня возвращает массив, но как его заюзать в скрипте??
просто $mas писать или может так $mas = $obj->search_DB(); ?? Не пойму(Спустя 50 сек.get_lp типа фильтрация -
Фев. 5, 2010, 1:22 п.п., спустя 8 минут 2 секунды
этот пример даже не запустится, это хуйня.<?php class userEnter { public $login; public $pass; public function get_lp($login,$pass) { $this->login = mysql_real_escape_string(htmlspecialchars(trim($login))); $this->pass = mysql_real_escape_string(htmlspecialchars(trim($pass))); } public function search_DB() { $sql = mysql_query("SELECT * FROM user WHERE login='".$this->login."' AND pass='".$this->pass."'"); if(mysql_num_rows($sql) == 1) { $mas = mysql_fetch_array($sql); return $mas; } } } $obj = new userEnter($login,$pass); $obj->get_lp(); $obj->search_DB(); ?>
Сапожник без сапог -
Фев. 5, 2010, 1:41 п.п., спустя 18 минут 57 секунд
этот пример даже не запустится, это хуйня.<?php class userEnter { public $login; public $pass; public function get_lp($login,$pass) { $this->login = mysql_real_escape_string(htmlspecialchars(trim($login))); $this->pass = mysql_real_escape_string(htmlspecialchars(trim($pass))); } public function search_DB() { $sql = mysql_query("SELECT * FROM user WHERE login='".$this->login."' AND pass='".$this->pass."'"); if(mysql_num_rows($sql) == 1) { $mas = mysql_fetch_array($sql); return $mas; } } } $obj = new userEnter($login,$pass); $obj->get_lp(); $obj->search_DB(); ?>
а как нужно(( создать класс user у которого будет метот authorize()?? Щас я попробую написатьСпустя 222 сек.<?php class USER { public $login; public $pass; public function authorize($login,$pass) { $this->login = mysql_real_escape_string(htmlspecialchars(trim($login))); $this->pass = mysql_real_escape_string(htmlspecialchars(trim($pass))); $sql = mysql_query("SELECT * FROM user WHERE login='".$this->login."' AND pass='".$this->pass."'"); if(mysql_num_rows($sql) == 1) { $mas = mysql_fetch_array($sql); return $mas; } } } ?>
а так будет пахать?? -
Фев. 5, 2010, 1:57 п.п., спустя 15 минут 12 секунд
обьект User вообще недолжен знать что такое mysql_query.
это задача датабейз адаптера.
я это вижу както так :<?php class NRG_Customer_Model_Customer { /** * Authenticate customer * * @param string $login * @param string $password * @return true * @throws Exception */ public function authenticate($login, $password) { $this->loadByEmail($login); if (!$this->validatePassword($password)) { throw NRG::exception(NRG::helper('customer')->__('Invalid login or password.'), self::EXCEPTION_INVALID_EMAIL_OR_PASSWORD ); } return true; } }
-
Фев. 5, 2010, 2:31 п.п., спустя 34 минуты 5 секунд
обьект User вообще недолжен знать что такое mysql_query.
это задача датабейз адаптера.
я это вижу както так :<?php class NRG_Customer_Model_Customer { /** * Authenticate customer * * @param string $login * @param string $password * @return true * @throws Exception */ public function authenticate($login, $password) { $this->loadByEmail($login); if (!$this->validatePassword($password)) { throw NRG::exception(NRG::helper('customer')->__('Invalid login or password.'), self::EXCEPTION_INVALID_EMAIL_OR_PASSWORD ); } return true; } }
слушай я тут поняит пытаюсь ооп, что за хню ты написал))) что эти :: делают???
validatePassword это метод для проверки пароля?? self::EXCEPTION_INVALID_EMAIL_OR_PASSWORD это что за зверь…Спустя 219 сек.обьект User вообще недолжен знать что такое mysql_query.
это задача датабейз адаптера.
я это вижу както так :<?php class NRG_Customer_Model_Customer { /** * Authenticate customer * * @param string $login * @param string $password * @return true * @throws Exception */ public function authenticate($login, $password) { $this->loadByEmail($login); if (!$this->validatePassword($password)) { throw NRG::exception(NRG::helper('customer')->__('Invalid login or password.'), self::EXCEPTION_INVALID_EMAIL_OR_PASSWORD ); } return true; } }
слушай я тут понять пытаюсь ооп, что за хню ты написал))) что эти :: делают???
validatePassword это метод для проверки пароля?? self::EXCEPTION_INVALID_EMAIL_OR_PASSWORD это что за зверь… -
Фев. 5, 2010, 2:31 п.п., спустя 6 секунд
self::EXCEPTION_INVALID_EMAIL_OR_PASSWORD это что за зверь…
думаю что строковая константаСапожник без сапог -
-
Фев. 5, 2010, 3:13 п.п., спустя 25 минут 33 секунды
что эти :: делают???
обращение к статическим свойствам/методамСпустя 46 сек.validatePassword это метод для проверки пароля??
да, он возвращает booleanСпустя 81 сек.на константу EXCEPTION_INVALID_EMAIL_OR_PASSWORD можешь покачто не обращать внимание, собственно и на конструкцию throw тоже. -
Фев. 5, 2010, 3:21 п.п., спустя 7 минут 42 секунды
что эти :: делают???
обращение к статическим свойствам/методамСпустя 46 сек.validatePassword это метод для проверки пароля??
да, он возвращает booleanСпустя 81 сек.на константу EXCEPTION_INVALID_EMAIL_OR_PASSWORD можешь покачто не обращать внимание, собственно и на конструкцию throw тоже.
мне сложно эти веши понять, я еще начинаюший.
Страницы: ← Предыдущая страница • Следующая страница →
Пожалуйста, авторизуйтесь, чтобы написать комментарий!