Focster
@Focster
радиоинженер

Как написать правильно подключение к базе данных?

Добрый день.
Есть старый скрипт поключения к базе данных (использовался на php 5.3) и сейчас на версии php 5.6 выдаёт ошибку при подключении, о устаревшем msql и что нужно использовать или mysqli либо PDO.

Вот сама часть кода:
If (!$mysql = mysql_connect($con_adr,$con_use,$con_pas)){echo "Нарушена связь с базой данных!";}
If (!mysql_select_db ($con_bd, $mysql)){echo "Невозможно выбрать данную БД!";}

mysql_query("SET NAMES UTF8");


Как реализовать правильное подключение к базе?
  • Вопрос задан
  • 661 просмотр
Пригласить эксперта
Ответы на вопрос 2
Ivanq
@Ivanq
Знаю php, js, html, css
Сначала код
If (!$mysql = mysqli_connect($con_adr,$con_use,$con_pas)){echo "Нарушена связь с базой данных!";}
If (!mysqli_select_db ($mysql, $con_bd)){echo "Невозможно выбрать данную БД!";}

mysqli_query($mysql, "SET NAMES UTF8");


Важные отличия:
1. Вместо mysql_ везде mysqli_
2. В каждой mysqli_ функции нужно указывать первым параметром ресурс - в данном случае $mysql.
3. Также можно использовать вместо функций mysqli_ класс Mysqli. Имхо, удобнее и практичнее.

Это mysqli. Про PDO посоветовать не могу.
Ответ написан
Комментировать
Focster
@Focster Автор вопроса
радиоинженер
/*
If (!$mysql = mysql_connect($con_adr,$con_use,$con_pas)){echo "Нарушена связь с базой данных!";}
If (!mysql_select_db ($con_bd, $mysql)){echo "Невозможно выбрать данную БД!";}

mysql_query("SET NAMES UTF8");
mysql_query("SET time_zone = '+03:00'");
*/

If (!$mysql = mysqli_connect($con_adr,$con_use,$con_pas)){echo "Нарушена связь с базой данных!";}
If (!mysqli_select_db ($con_bd, $mysql)){echo "Невозможно выбрать данную БД!";}

mysqli_query($mysql, "SET NAMES UTF8");
mysqli_query("SET time_zone = '+03:00'");


Заменил, сейчас выдаёт ошибку:

Warning: mysqli_select_db() expects parameter 1 to be mysqli, string given in /home/admin/web/my.site.ru/public_html/connect.php on line 16
Невозможно выбрать данную БД!
Warning: mysqli_query() expects at least 2 parameters, 1 given in /home/admin/web/my.site.ru/public_html/connect.php on line 19
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы