Как подключить базу данных mysql к сайту php?

13 ответов на вопрос “Как подключить базу данных mysql к сайту php?”

  1. Aflame Ryaen Ответить

    1. Установленный СУБД и созданная рабочая база данных. Например, в MySQL (Что такое СУБД и MySQL?).
    2. Учётная запись пользователя для MySQL с соответствующими правами (Что такое права и привилегии в MySQL?)
    3. Соответственно сервер с установленным PHP
    Если не выполнить один из этих пунктов, то подключиться не получится.
    Если Вы работаете уже на хостинге или на специальной сборке сервера (Denwer, XAMPP и тд), то и PHP, и MySQL у Вас скорее всего уже установлены.

    Алгоритм взаимодействия PHP и MySQL

    1. Подключение к БД
    2. Отправка запроса и получение результата
    3. (Желательно) Закрытие подключения
    Теперь подключаемся к базе данных средствами PHP:
    Код PHP
    < ?php $db = mysql_connect("localhost", "Admin", "pass"); // данные пользователя mysql_select_db ("baseName",$db); // выбираем к какой БД подключаемся ?>
    Как Вы видите, для подключения указываются четыре параметра:
    1. Имя хоста. Во многих случаях достаточно указать localhost (на этом же хостинге).
    2. Имя пользователя, которого Вы зарегистрировали для использования MySQL.
    3. Пароль пользователя, которого Вы зарегистрировали для использования MySQL.
    4. Название Базы Данных, к которой хотим подключиться. Соответственно у пользователя, которого мы указали, должны быть права для работы в этой БД.
    В результате, если что-то указано неверно, то ничего криминального не произойдёт, а скорее всего Вы увидите ошибку. Но будем оптимистами, допустим Вы ввели всё верно.
    Ещё один вид подключения:
    Код PHP
    < ?php $host="localhost"; /*хост*/ $user="admin"; /*Имя пользователя*/ $password="12345"; /*Пароль пользователя*/ $db="baseName"; /*Название базы данных*/ mysql_connect($host, $user, $password); /*Подключение к серверу*/ mysql_select_db($db); /*Подключение к базе данных на сервере*/ ?>
    Тут я наглядно создаю переменные с примером данных по пользователю и хосту, а потом создаём подключение.

    Как прервать (закрыть) подключение к БД в PHP?

    Бывают случаи, когда данные для подключения указываются некорректно. В этом случае скрипт продолжает проработку файла PHP и выдаёт определённое количество ошибок и предупреждений на странице. Для этих случаев предлагаю использовать обработчик ошибок при подключении к БД. В случае неудачного подключения Вам будет выведено предупреждение, которое подскажет на каком этапе проблема:
    Код PHP
    < ?php $user="admin"; $password="12345"; $db="baseName"; // если произошла ошибка mysql_connect($host, $user, $password) or die("MySQL сервер недоступен!".mysql_error()); mysql_select_db($db) or die("Нет соединения с БД".mysql_error()); ?>
    Очень важно также то, что проработка сценария прекратится, что убережёт Вас от массы некорректных данных.
    Поздравляю! Теперь Вы знаете как подключиться к БД в PHP и закрыть соединение!
    Спасибо за внимание!

  2. Имени Фамилио Ответить

    Описание: в этой статье мы покажем вам, как подключиться к серверу базы данных MySQL с помощью объекта PDO.
    Перед подключением к базе данных MySQL необходимо указать следующую информацию:
    Имя источника данных MySQL или DSN: указывает адрес сервера базы данных MySQL. Вы можете использовать IP-адрес или имя сервера, например, 127.0.0.1  или  localhost
    Имя базы данных MySQL: указывает имя базы данных, к которой вы хотите подключиться.
    Имя пользователя и пароль: укажите имя пользователя и пароль пользователя MySQL, который вы используете для подключения к серверу базы данных MySQL. Учетная запись должна иметь достаточные привилегии для доступа к базе данных, указанной выше.
    Мы будем использовать:
    Локальный сервер базы данных MySQL, так что DSN есть localhost.
    Classicmodels в качестве образца базы данных.
    root с пустым паролем, только ради демонстрации.

    Подключение к MySQL

    Во-первых, чтобы сделать это удобным, мы создадим новый файл PHP для конфигурации базы данных с именем dbconfig.php, который содержит все настроенные параметры:
    < ?php $host = 'localhost'; $dbname = 'classicmodels'; $username = 'root'; $password = ''; Во-вторых, мы создаем новый файл PHP с именем phpmysqlconnect.php: getMessage()); } Как работает скрипт Мы включили файл dbconfig.php в скрипт, используя функцию require_once. Внутри блока try мы создали новый объект PDO с тремя аргументами: строка подключения, имя пользователя и пароль. Строка подключения состоит из переменных $host и $dbname в файле dbconfig.php. Если соединение с базой данных MySQL установлено успешно, мы отобразили сообщение об успехе. Если были какие-либо ошибки или исключения, PHP выдал исключение PDOException который содержит подробное сообщение об ошибке. Мы вызываем метод getMesage() объекта PDOException, чтобы получить подробное сообщение для отображения. В-третьих, давайте протестируем скрипт из веб-браузера.
    Работает как положено. Мы успешно подключились к серверу MySQL.
    Давайте попробуем что-то изменить в коде, чтобы скрипт отображал сообщение об ошибке. Если вы установите пустую переменную $username, вы получите следующее сообщение об ошибке:

    Сообщение об ошибке показывает, что:
    Access denied for user ”@’localhost’ to database ‘classicmodels’
    потому что у нас нет пустого пользователя в базе данных classicmodels.
    Когда скрипт заканчивается, PHP автоматически закрывает соединение с сервером базы данных MySQL. Если вы хотите явно закрыть соединение с базой данных, вам нужно установить объект PDO null следующим образом:
    $conn = null;
    В этой статье вы узнали, как подключиться к MySQL с помощью объекта PHP PDO и обрабатывать любые исключения, которые могут возникнуть при подключении базы данных MySQL.

  3. Ragefire Ответить


    От автора: сделайте лицо серьезнее! Напустите на себя важный вид и все это приукрасьте капелькой надменности. Вот, теперь вы похожи на профессионального разработчика, которому в программировании все по плечу! К чему весь этот маскарад? А к тому, что сегодня мы будем в PHP подключаться к базам данных как настоящие профессионалы!

    Мы не профессионалы?

    К сожалению, пока нет! Так как мы еще учимся, то я часто в своих примерах использую упрощенный вариант реализации того или иного решения. Но пора привыкать все делать, как этого требуют правила профессиональной разработки. Сегодня научимся «правильно» коннектиться к БД. Точнее, это мы уже умеем, но не знаем всех тонкостей. Во всех приводимых примерах подключения к СУБД я использовал такого рода код:

    Как видите, строка подключения, переменные и запрос прописаны в одном файле. На практике опытные разработчики несколько оптимизируют этот код и делают его «многоразовым». Это не значит, что приведенный скрипт отработает только один раз, и затем его придется заново переписывать . Просто профессионалы используют несколько функций и даже классы. А значения переменных строки подключения (функция mysqli()) прописывают в виде констант.
    В общем, постараемся рассмотреть и реализовать все эти профессиональные подходы. Надеюсь, вы правильно сморщили лоб, не забыли о капельке надменности… Стартуем!

  4. AdMINET0p Ответить


    Сообщение от Jodah

    иногда действительно требуется повторное подключение к БД, например во время парсинга. Нечто вроде:
    1. Подключились к БД, получили список ссылок, которые нужно спарсить
    2. Закрыли соединение
    3. Парсим данные
    4. Повторно подключились к БД, занесли обновлённую информацию
    Для меня лично это очень странно. Если я делаю парсинг прямо с сайта, а не с локальной машины – то делаю только одно подключение. В цикле парсяться необходимые страницы и тут же эти данные заливаются в базу. Проверяются на уникальность и так далее. Вот подумайте сами. Зачем мне в базе данных необходимы ссылки, которые необходимо парсить? Это какая-то чушь. Я делаю парсинг последней залитой информации. До этого я уже подключен к базе, где проверяю эту последнюю пропарсенную инфу на уникальность и если результат положительный – заливаю в базу. Зачем мне делать несколько подключений? Скрипт один.

    Сообщение от Jodah

    Без повторного подключения долго работающий скрипт может превысить макс. время ожидания БД и мы получим ошибку MySQL server has gone away.
    Для этого существует файл php.ini , а так же голова программиста, которая должна всё учесть и не допускать таких ошибок.
    Блин… стоп стоп стоп. Ошибка базы? Ну, такого я еще не встречал. По умолчанию пых настроен на 30 сек. И в первую очередь выскочит эта ошибка. Превышено время ожидания.
    0

  5. VideoAnswer Ответить

Добавить ответ

Ваш e-mail не будет опубликован. Обязательные поля помечены *