Регистрация
Регистрируясь, вы подтверждаете свое согласие с соглашением об использовании персональных данных.
Восстановление пароля

Работа с MySQL в Неткэте

PHP — система со сложной историей. Стихийное развитие оставило достаточно родовых травм и детских болезней, чтобы регулярно сводить с ума разработчиков.

Например, сейчас в PHP есть 3 способа работы с базой данных MySQL:

  1. расширение mysql
  2. расширение mysqli
  3. PDO

mysql — самое старое раcширение, разработанное для MySQL 3.23. Расширение не развивается. Последние годы разработчики просто обновляют год в описании. С версии PHP 5.5 расширение помечено как устаревшее. В версии 7 расширение удалено из PHP.

Ему на смену предлагаются mysqli и PDO. mysqli — улучшенная версия mysql, а PDO — универсальный механизм для работы с базами данных. Посмотрите сравнение.

Решение просто удалить функции расширения mysql, а не замкнуть их на аналогичные функции mysqli кажется мне очень странным и попахивает насилием.

В Неткэте мы используем базу данных MySQL. Чтобы защитить наших пользователей от таких решений разработчиков PHP мы предоставляем класс для работы с базой данных. Используйте его для прямых запросов в базу. Обязательно экранируйте строковые значения перед подстановкой в запрос методом escape, явно приводите целые и дробные величины функциями intval и floatval. Это — защита от SQL-инъекций.

Даже если вы пишете не на Неткэте, то не используйте функции расширений mysql и mysqli напрямую. Используйте PDO, готовую обёртку или на худой конец, напишите свою.

Читайте по теме

Поделиться

Комментарии 2

Евгений Соколов  Deviks 14 сентября 2016, 04:14:09
Если я буду использовать php 7 c MySQL и использовать класс для работы с базой данных, тогда система будет хорошо работать?
   
ev09  Харитонов Евгений 04 декабря 2016, 07:56:47
Нормально все, только нормального memcache для php7 трудно найти
   
Описание проекта