На нашем сайте мы используем cookie для сбора информации технического характера и обрабатываем IP-адрес вашего местоположения. Продолжая использовать этот сайт, вы даете согласие на использование файлов cookies. Здесь вы можете узнать, как мы пользуемся файлами cookies.
Я согласен
логотип upread.ru

3 метода подключения к MySQL с PHP с примерами кода


Чтобы начать пользоваться базой данных MySQL, надо в первую очередь понять, как подключиться из вашей пользовательской PHP-программы (скрипта) к этой самой базе данных MySQL.

В этой статье описаны следующие три метода, а также соответствующие примеры PHP-кода, в которых объясняется, как подключиться к вашей базе данных из PHP.

Для всех приведенных ниже примеров мы будем подключаться к уже существующей базе данных MySQL. Примечание: все, что объясняется здесь, также будет работать с MariaDB, так же как и с MySQL.

1. Подключение к PHP с помощью расширения mysqli
*mysqli означает MySQL Improved

Создайте следующий файл mysqli.php

<?php

  $conn = new mysqli("localhost", "name", "pass", "db");
  
  if ($conn->connect_error) {
    die("Ошибка: невозможно подключиться: " . $conn->connect_error);
  } 

  echo 'Подключились к базе.<br>';

  $result = $conn->query("SELECT id FROM goroda");

  echo "Количество строк: $result->num_rows";

  $result->close();

  $conn->close();
  
  ?>
В приведенном выше коде:

  • mysqli - эта функция инициирует новое соединение с использованием расширения mysqli. Функция принимает четыре аргумента:

    1. localhost имя хоста, на котором запущена база данных MySQL
    2. name - имя пользователя MySQL для подключения
    3. pass - пароль для пользователя mysql
    4. db - база данных MySQL для подключения.

  • qvery - функция запроса MySQL. В этом примере мы выбираем столбец id из базы данных городов.
  • Наконец, мы показываем количество строк, выбранных с использованием переменной num_rows в результате. Мы также закрываем как результат, так и переменную соединения, как показано выше.
Когда вы вызываете вышеуказанный mysqli.php из своего браузера, вы увидите следующий вывод, который указывает, что PHP смог подключиться к базе данных MySQL и получить данные.

Подключились к базе.
Количество строк: 6
2. Подключение из PHP MySQL PDO Extension
*PDO означает объекты данных PHP

Драйвер PDO_MYSQL реализует интерфейс PDO, предоставляемый PHP, для подключения из вашего PHP-скрипта к базе данных MySQL.

Создайте следующий файл mysql-pdo.php:

<?php
  try {
    $conn = new PDO("mysql:host=localhost;dbname=db", "name", "pass");

    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    echo 'Подключились к базе.<br>';

    $sql = 'SELECT id FROM goroda';
    
    print "Список id:<br>";
    foreach ($conn->query($sql) as $row) {
        print $row['id'] . "<br>";
    }
    $conn = null;

  }
  catch(PDOException $err) {
    echo "Ошибка: невозможно подключиться: " . $err->getMessage();
  }
?> 
В приведенном выше:

  • new PDO - создаст новый объект PDO, который примет следующие три аргумента:

    1. mysql connect string: он будет в формате «mysql:host=localhost;dbname=db». В приведенном выше примере db работает на localhost, и мы подключаемся к базе данных db.
    2. Имя пользователя MySQL для подключения
    3. Пароль для пользователя mysql

  • переменная $sql - создать запрос sql, который вы хотите выполнить. В этом примере мы выбираем столбец id из таблицы городов.
  • query ($sql). Здесь мы выполняем запрос sql, который мы только что создали.
  • foreach. Здесь мы перебираем результат из указанной выше команды запроса и сохраняем ее в переменной $row, а затем выводим ее с помощью echo.
  • В MySQL PDO, чтобы закрыть соединение, просто установите переменную $conn в значение null.

Когда вы вызываете вышеуказанный скрипт mysqli.php из своего браузера, вы увидите следующие строки; они означают, что PHP смог подключиться к базе данных MySQL и получить информацию:

Подключились к базе.
Список id:
1
2
3
4
5
6
3. Подключение из PHP c использование устаревших функций mysql

Используйте этот метод, только если вы используете более старую версию PHP и по какой-то причине не можете обновить ее до новой версии. Рекомендуется использовать метод №2 и метод №3, показанные выше, вместо этого метода. Я включил этот метод только для справки, а не как рекомендацию для использования.

Это конкретное расширение было устарело от версии PHP 5.5. Но, начиная с версии PHP 7.0, это даже не будет работать, поскольку оно было удалено. Начиная с версии PHP 5.5, когда вы используете эти функции, она будет генерировать ошибку E_DEPRECATED.

Именно поэтому кстати, хотя я и рекомендую своим заказчикам в новых проектах использовать последние версии PHP, для старых советую переходить с осторожностью. Обратная совместимость увы, не всегда работает.

Создайте файл mysql.php:

<?php
$conn = mysql_connect('localhost', 'name', 'pass');
mysql_select_db("db");
if (!$conn) {
die('Ошибка: невозможно подключиться: ' . mysql_error());
}

echo 'Подключились к базе.<br>';

$result = mysql_query('SELECT id FROM goroda');

$row = mysql_fetch_row($result);
echo "id 1: ", $row[0], "<br>\n";

mysql_close($conn);
?>
В приведенном выше:

  • Функция mysql_connect принимает три аргумента:

    1. имя хоста, в котором запущена база данных MySQL;
    2. имя пользователя MySQL для подключения;
    3. пароль для пользователя mysql. Здесь он подключается к базе данных MySQL, которая выполняется на локальном сервере с использованием имени пользователя и его пароля.

  • Функция mysql_select_db. Как следует из названия, она выбирает базу данных, к которой вы хотите подключиться. Эквивалентно команде «use». В этом примере мы подключаемся к базе данных db.
  • Функция mysql_query - используется для указания вашего запроса MySQL. В этом примере мы выбираем столбец id из базы данных городов.
  • mysql_fetch_row. Используйте эту функцию для извлечения строк из SQL-запроса, который мы только что создали.
  • Наконец, закройте соединение, используя команду mysql_close, как показано выше.
Когда вы вызываете вышеуказанный mysql-legacy.php из своего браузера, вы увидите следующий вывод, который указывает, что PHP смог подключиться к базе данных MySQL и получить информацию:

Подключились к базе.
id 1: 1
Вот таким образом можно подключаться к MySQL. Повторюсь, лучше использовать два первых способа; о безопасности я уже писал в одном из своих материалов. Если вам требуется консультация, то пишите мне на электронную почту, скайп или вконтакте - я буду рад помочь вам за небольшое денежное вознаграждение.


Автор этого материала - я - Пахолков Юрий. Я оказываю услуги по написанию программ на языках Java, C++, C# (а также консультирую по ним) и созданию сайтов. Работаю с сайтами на CMS OpenCart, WordPress, ModX и самописными. Кроме этого, работаю напрямую с JavaScript, PHP, CSS, HTML - то есть могу доработать ваш сайт или помочь с веб-программированием. Пишите сюда.



тегистатьи IT, основы mysql, подключение mysql, mysqli, pdo





Отправляя сообщение я подтверждаю, что ознакомлен и согласен с политикой конфиденциальности данного сайта.




Алгоритм быстрого объединения
Фасадные работы


© upread.ru 2013-2020
При перепечатке активная ссылка на сайт обязательна.
Задать вопрос
письмо
Здравствуйте! Вы можете задать мне любой вопрос. Если не получается отправить сообщение через эту форму, то пишите на почу up777up@yandex.ru
Отправляя сообщение я подтверждаю, что ознакомлен и согласен с политикой конфиденциальности данного сайта.