Форум → Программирование → PHP для идиотов → PHP и ООП → непонятки с ООП
непонятки с ООП
Страницы: ← Предыдущая страница • Следующая страница →
-
23 января 2010 г. 1:09, спустя 3 минуты 47 секунд
ок. А как быть в таком случае:
вывод списка сообщений. Справа от сообщения есть кнопка "редактировать" (если ты залогинен под автором сообщения). Как закешировать список этих сообщений?
Усложним задание, и дата сообщения выводится в относительном формате: минуту назад, 5 минут назад. -
23 января 2010 г. 1:26, спустя 16 минут 41 секунду
можешь закешировать скл запроса данные, даты форматирование и тп нихуя не стоят времени
ок. А как быть в таком случае:
вывод списка сообщений. Справа от сообщения есть кнопка "редактировать" (если ты залогинен под автором сообщения). Как закешировать список этих сообщений?
Усложним задание, и дата сообщения выводится в относительном формате: минуту назад, 5 минут назад.Сапожник без сапог -
-
23 января 2010 г. 1:49, спустя 5 минут 52 секунды
ну да, это тоже можно, чтобы поиск роботы мозг не ебли)
и отрендеренные данные для анонимусовСапожник без сапог -
5 февраля 2010 г. 13: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 г. 13:11, спустя 6 минут 41 секунду
как по мне то авторизация должна быть у обьекта User
соотвественно должен быть быть класс User а у него метод authorize()Спустя 79 сек.+ обьект User вообще недолжен знать что такое mysql_query.
это задача датабейз адаптера.Спустя 35 сек.И как мне теперь достать $mas икласса.. как пользоваться?
у тебе вообщето метод search_DB() его возвращает…Спустя 102 сек.я вот тут пытаюсь до сих пор догнать ооп
догнать ооп - это не использовать его синтаксис.Спустя 101 сек.и опять же…
именуй методы так, чтоб через год ты открыл свой код и понял что там происходит.
как по мне то search_DB() должен искать базу данных…Спустя 29 сек.а что такое get_lp() я вообще не понял… -
5 февраля 2010 г. 13: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 г. 13: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 г. 13: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 г. 13: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 г. 14: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 г. 14:31, спустя 6 секунд
self::EXCEPTION_INVALID_EMAIL_OR_PASSWORD это что за зверь…
думаю что строковая константаСапожник без сапог -
-
5 февраля 2010 г. 15:13, спустя 25 минут 33 секунды
что эти :: делают???
обращение к статическим свойствам/методамСпустя 46 сек.validatePassword это метод для проверки пароля??
да, он возвращает booleanСпустя 81 сек.на константу EXCEPTION_INVALID_EMAIL_OR_PASSWORD можешь покачто не обращать внимание, собственно и на конструкцию throw тоже. -
5 февраля 2010 г. 15:21, спустя 7 минут 42 секунды
что эти :: делают???
обращение к статическим свойствам/методамСпустя 46 сек.validatePassword это метод для проверки пароля??
да, он возвращает booleanСпустя 81 сек.на константу EXCEPTION_INVALID_EMAIL_OR_PASSWORD можешь покачто не обращать внимание, собственно и на конструкцию throw тоже.
мне сложно эти веши понять, я еще начинаюший.
Страницы: ← Предыдущая страница • Следующая страница →
Пожалуйста, авторизуйтесь, чтобы написать комментарий!