caballero, я с вами не согласен в последнем вопросе Ф-я должна иметь четкий api и если она возвращает объект класса user - то возвращать false в хз каких ситуациях - это истинный моветон. Этот false не дает понять, почему он вернулся - нет такого пользователя или пароль не подошел или база упала ... из за чего false ? Так что если возвращается объект - должен возвращаться либо он, либо null, никаких смешений типов не допускается, а все ситуации, когда user не может быть отдан - должны вызывать exception соответствующего типа.
Самое простое возвращать строку с описанием ошибки (null ничем не лучше false)
Смешение типов в PHP нормально - это нетипизированный язык
а вот исключения там где можно сделать нормальную обработку как раз не лучшее решенире
Цитата:
Чем статический метод предпочтительнее конструктора на большом количестве полей?
тем что вы берете данные и прямо присваиваете их членам класса
не нужно писать конструктор с десятком параметром а потом в конструкторе десяток переприсвоений этих параметров внутренним переменным
я просто почему спрашивал... видел достаточно кода(на яве или шарпах), где проверка валидности данных проходила исключительно внутри класса объекта, и при некорректности просто бросалось исключение, в том числе при первичном заполнении пустого объекта.
Ну, всякj люди пишут. В принципе если выбрысывать исключение то можно - тогда сборщик мусора сам уберет недоделанный класс. Но такой подход тоже некорректен. исключения должны выбрасыватся в ИСКЛЮЧИТЕЛЬНЫХ ситуациях. Например - ошибка соединения с БД или еще чего. Проверка на валидность - это бизнес-логика. Выбрасывать исключение потому что неверный логин - моветон.
Это обычное обращение к файлу PHP по URL который ты прописываешь в елементе который запрашивает данные аяксом
получил файл сходил в базу выгреб данные отдал массив закодировный json( как в примере) обычным echo. структура массива - в описании календаря - он же должен получать данные в попределеном виде
судя по всему ты не очень не понимаешь как ajax работает - начни изучение доков и примеров - этого добра полный интернет
На самом деле браузеры не производят валидацию на основе DOCTYPE. Они по этой строке просто ориентируются как отрисовывать в неоднозначных ситуациях.
Самое оптимальное либо не ставить там ничего либо просто писать <!DOCTYPE html>
А сайты нужно просто тщательно тестировать - другого варианта нет.
это пример кода который о отправляет данные в календарь
и то что array запросто может братся из базы.
Запрос идет по AJAX - значит календарей может быть несколько каждый будет спрашивать отдельно - нужно только в URL запроса подставлять какой нибудь номер чтобы понимать какой календарь просил данные
Проверять валидность в конструкторе - абсурд. Ты создаешь екземпляр класса
разумеется уж валидного. Если ты проверяешь в конструкторе ты УЖЕ создал экземпляр. А если он не валидный и что - прибивать его?
Вообще в конструкторе не принято выполнять действия которые могут вызывть ошибку или исключение (ходить в базу например) - задача конструктора - проинициализировать члены класса.
Плодить иерархию валидаторов - это значит писать "индусский" код и противоречить принципу инкапсуляции.
Самое грамотное - создать в классе СТАТИЧЕСКИЙ метод который будет валидировать данные и возвращать екземпляр класса или там null или false или исключение выбрасывать. Тем более что статический метод будет иметь доступ к приватным членам класса. Да и не нужны в большинстве случаев специфические валидаторы.
В случае с юзером - статический метод login(name,pass)
либо возвращает екземпляр юзера после проверки в БД, либо например строку с описанием ошибки.
Можно ли как-то сделать так, чтобы скрипт прерывался, а потом дальше выполнялся?
Нельзя стандартными средствами
Прелдполагаю что вы парсите какмито громоздкими методами
попробуйте файл лога сначала прогнать через какой нибудь быстрый фильтр
например повыкидывать строки явно не интересные и записать остальное во временный файл
уверен его размер будет гораздо меьше
а потом парсить его уже детально
Соц Сеть,те надо смайлики просталять в тексте сообщения?
если есть прога которая потом текстовые смайлики заменит на иконки с ФАЙЛА то да. Вот как на форуме здесь. Вставляете значки а когда выводите там уже рожица - прога на сервере обюработала и подставила ссылку на файл.
значит phpadmin показывает дефолтное значение
я думаю можно запросить соответствующую переменную и вывести данные именно касающееся твоей сесии, в смысле твоего коннекта.
если таки будет off тогда надо гуглить
наверняка ктото натыкался на похожую траблу
на хабре помню что то такое обсуждалось
так зачем пишешь такие мудреные запросы если новичек
Где вырубать не помню - спроси у гугла
либо настройка в my.cnf либо запрос специальный либо то и другое
кстати
уверен что правильный синткасис?
mysql_query("SET AUTOCOMMIT=0");
принципы ООП ты можешь свободно расширять движки Drupal, 1c-bitrix... в общем что душе угодно.
Это ты сможешь делать если будешь знать эти движки после нескольких недель а то и месяцев ковыряния в коде и документации. Знание ООП тут поможет не больше чем знание синтаксиса и функций PHP.
Цитата:
Берёшь список и описание заложенных в системе методов и применяешь их где тебе надо