Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Помогите составить ПРАВИЛЬНЫЙ класс MySQL
Покинул форум
Сообщений всего: 7187
Дата рег-ции: Февр. 2012
Помог: 353 раз(а)
все уже украдено, тьфу, блин, написано до вас
mysqli, PDO
----- Чем больше узнаю, тем больше я не знаю.
etoYA
Отправлено: 12 Апреля, 2012 - 18:54:48
Участник
Покинул форум
Сообщений всего: 1859
Дата рег-ции: Июль 2011 Откуда: Крым
Помог: 21 раз(а)
lowmax, а чем ты сделаешь лучше?
Почему ты тогда пользвуешся функциями php, ведь можно написать свою хуже, но свою!
lowmax
Отправлено: 12 Апреля, 2012 - 19:14:06
Новичок
Покинул форум
Сообщений всего: 39
Дата рег-ции: Апр. 2012
Помог: 0 раз(а)
etoYA пишет:
lowmax, а чем ты сделаешь лучше?
Почему ты тогда пользвуешся функциями php, ведь можно написать свою хуже, но свою!
ясный пень - я учусь писать свое, а не тупо пользоваться чужим
OrmaJever
Отправлено: 12 Апреля, 2012 - 19:20:19
Активный участник
Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010 Откуда: Чернигов
Помог: 299 раз(а)
Ну дак напишите свой язык, зачем вы пользуетесь чужим php? Драйвер mysql устарел и не безопасен, на замену пришёл mysqli, а у него уже есть обьектный интерфейс.
----- Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
Bio man
Отправлено: 12 Апреля, 2012 - 19:20:21
Постоянный участник
Покинул форум
Сообщений всего: 2751
Дата рег-ции: Июль 2010 Откуда: Даугавпилс, Латвия
Помог: 52 раз(а)
мда, в наши та времена использовать устаревший mysql_* не целесообразно по отношению к новым разработкам в этой сфере (MySQL5). Используй PDO но оберни ее в синглтон, таким образом добьешся максимального функционала современных баз данных, да, именно баз данных, для этого и существует PDO. Представь ситуацию - тебе или заказчику захочется использовать Postgres вместо MySQL, тогда тебе придется перелопатить не мало кода. Но если работаешь с PDO то достаточно изменить DSN только в 1 месте, что бы система снова заработала.
DelphinPRO
Отправлено: 12 Апреля, 2012 - 19:35:00
Активный участник
Покинул форум
Сообщений всего: 7187
Дата рег-ции: Февр. 2012
Помог: 353 раз(а)
lowmax пишет:
ясный пень - я учусь писать свое, а не тупо пользоваться чужим
касаемо конкретно работы с БД - не стоит тратить время на написание своего класса. Ведь это время можно потратить на изучение готовой библиотеки или чего еще более полезного.
----- Чем больше узнаю, тем больше я не знаю.
lowmax
Отправлено: 13 Апреля, 2012 - 01:59:50
Новичок
Покинул форум
Сообщений всего: 39
Дата рег-ции: Апр. 2012
Помог: 0 раз(а)
Спрашивал
Что собираюсь писать типа проект
Что лучше использовать mysqli или по старинке?
На современных хостингах поддерживается mysqli или нет? у меня на хостинге стоит php 5.0
ну и т.д.
В итоге никто ничего путного не ответил
потому как тролли
Делаю бесплатный проект (может со временем сделаю примочки платными) для всех желающих типа вордпресса (на самом деле идея не подходит для сравнения), но таким образом чтобы любой html сайт можно было оживить
т.е. любой школьник знающий html мог взять движок и парой простых добавлений в html превратить свой html сайт в полноценный блог (для начала блог)
Идея интересна тем что просто не придется тратить время на написание php кода.
И главное сайт будет оптимизирован (seo) под поисковики.
Но так как с ооп работаю впервые в php (раньше писал все функциями ну и стандартные обьекты юзал) приходится задавать вопросы и учу ооп исходя из трудностей с которыми сталкиваюсь и которые сам себе придумываю
кстати mysqli я смотрел, действительно очень простая вещь, вот только не понял - почему про нее не говорят на сайтах по php и книгах?
Ну а если вы затронули вопрос Postgres то вот встречный вопрос
У меня все базы огромные, таблички более 1000 000 строк (а то и несколько), естественно я не всегда доволен работой MySQL
Postgres будет быстрее работать?
Или то что вы предлагаете очередные понты для школьников у которых база максимум 1000 строк?
Цитата:
Ну дак напишите свой язык, зачем вы пользуетесь чужим php? Драйвер mysql устарел и не безопасен, на замену пришёл mysqli, а у него уже есть обьектный интерфейс.
вы думаете я не смогу написать и ваш вопрос заставит меня задуматься?)
это все не актуально с 90-х
сейчас время делать редакторы - шлеп-шлеп и сайт готов без программирования
Покинул форум
Сообщений всего: 1859
Дата рег-ции: Июль 2011 Откуда: Крым
Помог: 21 раз(а)
lowmax,
lowmax пишет:
сейчас время делать редакторы - шлеп-шлеп и сайт готов без программирования
Поверь, я сам недавно, наверное около месяца назад задавался вопросом, как правильно написать класс с работой базы. Меня направили на верный путь (mysqli), я так же как и ты ответил что неееееееееет!! Но стоило только попробовать, сразу же желание отпало делать бесполезные вещи.
Если ты про "нехочу использовать чужое". Дак это же делали разработчики PHP, если тебя и это не устраивает, то
OrmaJever пишет:
Ну дак напишите свой язык, зачем вы пользуетесь чужим php? Драйвер mysql устарел и не безопасен, на замену пришёл mysqli, а у него уже есть обьектный интерфейс.
Покинул форум
Сообщений всего: 1389
Дата рег-ции: Окт. 2010
Помог: 42 раз(а)
lowmax пишет:
кстати mysqli я смотрел, действительно очень простая вещь, вот только не понял - почему про нее не говорят на сайтах по php и книгах?
У меня в книге 2006г. издания написано что драйвер mysql устарел и предпочтительнее использовать mysqli или pdo. Я незнаю какие ты книги покупаешь. Покупай правильные книги
Мелкий
Отправлено: 13 Апреля, 2012 - 10:13:24
Активный участник
Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009 Откуда: Россия, Санкт-Петербург
Помог: 618 раз(а)
lowmax пишет:
У меня все базы огромные, таблички более 1000 000 строк (а то и несколько), естественно я не всегда доволен работой MySQL
А вот и не естественно. Нормально приготовленная база вполне бодро шевелится на таких объёмах.
lowmax пишет:
вот только поддерживается он старыми версиями php?
и с какой версии поддерживает?
Эти вопросы нормальные люди спрашивают у документации: http://nl3.php.net/manual/ru/mys...requirements.php
PHP4 и нормальный ООП - вещи несовместимые, следовательно - у вас в любом случае PHP5. Отсеять системным требованием динозавров 5.0.7 возможно.
lowmax пишет:
сейчас время делать редакторы - шлеп-шлеп и сайт готов без программирования
Я с вами не согласен в корне, но спорить не стану.
Bio man пишет:
Представь ситуацию - тебе или заказчику захочется использовать Postgres вместо MySQL, тогда тебе придется перелопатить не мало кода. Но если работаешь с PDO то достаточно изменить DSN только в 1 месте, что бы система снова заработала.
"Достаточно изменить" - это если ставить во главе всей разработки непременное требование забить на серьёзную оптимизацию и во что бы то ни стало поддерживать совместимость. Для проекта ТС это, пожалуй, подходит условие. Для хайлоада же - миграция на другую базу - всегда перелопачивание бОльшей части кода, а то и вовсе переписывание заново. Т.к. идёт заточка под конкретную базу с её конкретными сильными и слабыми сторонами.
Это ещё ладно в случае миграции с mysql, не так заметно. А попробуй смигрировать с постгреса на mysql? Если используются хотя бы штатный рекурсивный запрос?
lowmax пишет:
Помогите ПРАВИЛЬНО реализовать класс для работы с БД
Используйте полноценные private/protected/public и для методов.
Реализуйте паттерн singleton или factory.
Читайте Макконнелла "Совершенный код". Правильно с первого раза не получится реализовать по определению.
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.