Не могу настроить php mysql

Настраиваем Apache, PHP и MySQL вручную

В этой статье мы приведем краткий обзор этапов настройки Apache в среде Windows , а также ссылки на различные дополнительные ресурсы.

Предупреждение

Если на вашем компьютере уже установлен один из вариантов AMP :

  • Впоследствии вам будет затруднительно вернуться к старой версии AMP . Потому что различные настройки, которые мы будем задавать, перепишут значения реестра и приведут к изменению среды в целом;
  • Если вам нужно сохранить какие-либо конфигурации ( Apache , PHP , MySQL ) или данные, прежде чем выполнять шаги, описанные в этой инструкции, создайте все необходимые резервные копии.

Настройка MySQL

  1. Загрузите установочную программу MySQL , соответствующую вашей версии платформы;
  2. Запустите установочную программу и выберите вариант « Настроить »;
  3. Выполните все этапы установки и в конце нажмите кнопку « Готово »;
  4. После этого откроется окно « Мастер настройки сервера MySQL «:
  • Убедитесь, что у вас выбран вариант « Стандартная конфигурация » и перейдите к следующему шагу;
  • Если у вас уже установлен MySQL , вы можете получить сообщение « Служба Windows с именем MySQL уже существует. Пожалуйста, удалите эту службу корректно или выберите другое имя для новой службы «. В этом случае выберите другое имя для сервера MySQL ;
  • В следующем окне установите флажок для опции « Включить директорию Bin в PATH Windows », чтобы вы могли получить доступ к различным утилитам MySQL из командной строки;
  • В следующем окне установите пароль для пользователя root MySQL , который обладает наибольшим набором прав доступа к серверу;
  • На следующем и последнем этапе вы должны сохранить все изменения. Для этого нажмите кнопку « Выполнить ». После этого служба будет запущена.

Примечание

Чтобы сделать эту инструкцию максимально доступной, мы пропустили несколько сценариев конфигурации сервера MySQL для Apache Windows 7 . Это и многое другое изложено здесь .

По умолчанию MySQL устанавливается с режимом STRICT , который может привести к возникновению некоторых ошибок при использовании расширений и приложений, не рассматриваемых в данной инструкции. Для получения дополнительной информации обратитесь к этому ресурсу.

Настройка Apache

  1. Загрузите инсталляционный пакет. На данный момент предпочтительно использовать версию 2.2;
  2. Запустите мастер установки и выполните все этапы, пока не дойдете до шага « Информация о сервере ». Здесь задайте для каждого из полей приведенные ниже значения, если у вас нет конкретных требований для настройки сервера Apache :

1. localhost
2. localhost
3. admin@localhost

  1. Завершите все этапы мастера установки, нажимая « Далее », после чего он установит и запустит веб-сервер Apache в качестве службы Windows ;
  2. Теперь в строке состояния Windows вы сможете увидеть перо розового цвета с зеленой кнопкой, указывающее на то, что Apache запущен и работает. Перейдя в браузере по адресу http://localhost/ , вы должны увидеть страницу, на которой указывается, что служба работает;
  3. Теперь давайте перейдем к директории, в которой установлен Apache. Как правило, это C:Program FilesApache Software FoundationApache2.2 — и рассмотрим различные папки, содержащиеся в ней:
  1. bin — содержит различные бинарные файлы, некоторые из них перечислены ниже. Чтобы получить доступ к этим приложениям, большинство из которых являются командами, нам нужно добавить путь к папке bin в глобальной переменной PATH . Для этого кликните правой кнопкой мыши по иконке Мой компьютер> Свойства> Дополнительные параметры системы> Переменные среды и в списке « Системные переменные » найдите и выберите переменную PATH , нажмите на кнопку « Редактировать » и добавьте в конце точку с запятой ( если она еще не добавлена ), а затем введите абсолютный путь к папке bin . И в диалоговом окне « Свойства системы » нажмите кнопку « Применить »:
  • Файл httpd.exe — это веб-сервер Apache , который создал несколько дочерних процессов, обслуживающих целый ряд входящих запросов клиентов в соответствии с требованиями директивы MaxClients ;
  • Файл ab.exe — это инструмент, который устанавливается вместе с Apache и позволяет увидеть, насколько производительно работает приложение за единицу времени.
  1. conf — папка, в которой находятся различные конфигурационные файлы. В нашем случае наибольший интерес представляют следующие:
  • httpd.conf — большинство директив сервера находятся в этом файле и для легкого доступа к ним вы должны связать тип файла .conf с текстовым редактором « Блокнот »;
  • extrahttpd-vhosts.conf — содержит директивы для использования локального сервера в качестве виртуального хоста, чтобы запускать на вашем компьютере несколько серверов. Один из сценариев его использования — на стадии разработки, если вы не хотите трогать фактический домен, вы можете работать на локальной копии, при этом допустимо возникновение в этом файле мелких ошибок;
  • htdocs — корневой каталог веб-сервера по умолчанию, здесь отображается http://localhost/ , если вы не перенастроили его в файле httpd.conf ;
  • logs — журналы доступа и ошибок, связанные с различными проблемами, возникающими при установке Apache на Windows 7 или даже в приложении.
Читайте также:  Как починить гитару если отломался гриф

Ресурсы

Настройка PHP

Скачайте PHP и выберите предпочтительную версию в формате Zip . Различные настраиваемые опции связаны с тем, как PHP-код базы компилируется в двоичный код, и вам ничего не нужно изменять.

Создайте в папке, где у вас устанавливаются программные файлы, директорию под названием PHP .

Найдите загруженный Zip-файл , переместите его во вновь созданную папку и распакуйте архив.

Теперь добавим путь к PHP к глобальной переменной PATH . Для этого следуйте инструкциям, приведенным выше.

Конфигурирование PHP

Конфигурирование PHP сводится к редактированию файла php.ini . Пример файла для различных сценариев уже находятся в вашей папке PHP . Переименуйте файл php.ini-development в php.ini и откройте его в текстовом редакторе. Доступные значения для различных параметров задокументированы в файле php.ini ( обратите внимание, что это общие настройки для сервера, применяемые для всех проектов ):

  • max_execution_time — если у вас есть скрипты, которые выполняются слишком долго, и сервер возвращает различные неожиданные результаты, потому что не может выполнить весь процесс;
  • memory_limit ;
  • error_reporting ;
  • display_errors ;
  • log_errors — переменная, на которую нужно обращать внимание при сценариях разработки;
  • upload_tmp_dir ;
  • upload_max_filesize ;
  • extension_dir — чтобы не усложнять все, мы укажем папку, в которой расположены следующие расширения, вынеся эту переменную из комментариев и задав для нее абсолютный путь к этой папке. Вся строка должна выглядеть следующим образом:
  • Динамические расширения содержат дополнительные модули, которые можно загрузить вместе с PHP . В файле вы найдете закомментированные названия модулей, которые были добавлены в пакете с PHP ( директория ext ). Если вы хотите, активировать какой-либо из этих модулей, выведите из комментариев одно из следующих имен расширений:
  • php_curl.dll ;
  • php_gd2.dll ;
  • php_mbstring.dll ;
  • php_mysql.dll ;
  • php_mysqli.dll ;
  • php_pdo.dll ;
  • php_pdo_mysql.dll ;
  • php_xsl.dll ;
  • session.save_path .

Настройка Apache для работы с PHP

Для настройки PHP в Apache откройте файл httpd.conf. и в разделе « Dynamic Shared Object (DSO) Support » добавьте следующие директивы ( если вы разместили папку PHP в другом месте, внесите соответствующие изменения для пути к файлу php5apache2_2.dll ):

Для DirectoryIndex добавьте index.php и index.htm в качестве возможных файлов, если запрашивается каталог. Это делается следующим образом:

В конце файла добавьте следующую строку, которая будет указывать, где размещается файл php.ini :

Перезагрузка и тестирование PHP

После внесения изменений в конфигурационные файлы вам необходимо перезапустить Apache , чтобы изменения вступили в действие. Поэтому давайте перезапустим Apache с помощью инструмента Apache Monitor , который можно найти в строке состояния Windows .

Читайте также:  Geozon sky часы как настроить время

Теперь мы протестируем, как работает PHP . Перейдите в корневой каталог документов веб-сервера ( по умолчанию это C:Program FilesApache Software FoundationApache2.2htdocs ) и добавьте файл с именем phpinfo.php со следующим содержимым:

Таким образом, мы выведем страницу, содержащую информацию о настройках PHP , а также различных модулей, которые загружены в данный момент. Теперь в браузере перейдите по адресу http://localhost/phpinfo.php .

Установка и настройка XDebug

Пакет установки Apache Php MySQL в Windows 7 будет неполным без Xdebug . На этой странице вы сможете найти актуальную версию Xdebug .

Скопируйте всю страницу phpinfo , которую мы запустили ранее и вставьте ее в текстовое поле, после этого следуйте инструкциям по установке.

Источник

Работа с MySQL в PHP

PHP поддерживает работу с базой данных MySQL.
Специальные встроенные функции для работы с MySQL позволяют просто и эффективно работать с этой СУБД: выполнять любые запросы, читать и записывать данные, обрабатывать ошибки.
Сценарий, который подключается к БД, выполняет запрос и показывает результат, будет состоять всего из нескольких строк. Для работы с MySQL не надо ничего дополнительно устанавливать и настраивать; всё необходимое уже доступно вместе со стандартной поставкой PHP.

Что такое mysqli?

mysqli (MySQL Improved) — это расширение PHP, которое добавляет в язык полную поддержку баз данных MySQL. Это расширение поддерживает множество возможностей современных версий MySQL.

Как выглядит работа с базой данных

Типичный процесс работы с СУБД в PHP-сценарии состоит из нескольких шагов:

  1. Установить подключение к серверу СУБД, передав необходимые параметры: адрес, логин, пароль.
  2. Убедиться, что подключение прошло успешно: сервер СУБД доступен, логин и пароль верные и так далее.
  3. Сформировать правильный SQL запрос (например, на чтение данных из таблицы).
  4. Убедиться, что запрос был выполнен успешно.
  5. Получить результат от СУБД в виде массива из записей.
  6. Использовать полученные записи в своём сценарии (например, показать их в виде таблицы).

Функция mysqli connect: соединение с MySQL

Перед началом работы с данными внутри MySQL, нужно открыть соединение с сервером СУБД.
В PHP это делается с помощью стандартной функции mysqli_connect() . Функция возвращает результат — ресурс соединения. Данный ресурс используется для всех следующих операций с MySQL.

Но чтобы выполнить соединение с сервером, необходимо знать как минимум три параметра:

Если вы следовали стандартной процедуре установки MySQL или используете OpenServer, то адресом сервера будет localhost , логином — root . При использовании OpenServer пароль для подключения — это пустая строка ‘’, а при самостоятельной установке MySQL пароль вы задавали в одном из шагов мастера установки.

Базовый синтаксис функции mysqli_connect() :

Проверка соединения

Первое, что нужно сделать после соединения с СУБД — это выполнить проверку, что оно было успешным.
Эта проверка нужна, чтобы исключить ошибку при подключении к БД. Неверные параметры подключения, неправильная настройка или высокая нагрузка заставит MySQL отвеграть новые подключения. Все эти ситуации приведут к невозможности соединения, поэтому программист должен проверить успешность подключения к серверу, прежде чем выполнять следующие действия.

Соединение с MySQL устанавливается один раз в сценарии, а затем используется при всех запросах к БД.
Результатом выполнения функции mysqli_connect() будет значение специального типа — ресурс.
Если подключение к MySQL не удалось, то функция mysqli_connect() вместо ресурса вернет логическое значение типа «ложь» — false .
Хорошей практикой будет всегда проверять значение результа выполнения этой функции и сравнивать его с ложью.

Соединение с MySQL и проверка на ошибки:

Функция mysqli_connect_error() просто возвращает текстовое описание последней ошибки MySQL.

Установка кодировки

Первым делом после установки соединения крайне желательно явно задать кодировку, которая будет использоваться при обмене данными с MySQL. Если этого не сделать, то вместо записей со значениями, написанными кириллицей, можно получить последовательность из знаков вопроса: ‘. ’.
Вызови эту функцию сразу после успешной установки соединения: mysqli_set_charset($con, «utf8»);

Читайте также:  Не работает настройка подсветки

Выполнение запросов

Установив соединение и определив кодировку мы готовы выполнить свои первые SQL-запросы. Вы уже умеете составлять корректные SQL команды и выполнять их через консольный или визуальный интерфейс MySQL-клиента.
Те же самые запросы можно отправлять без изменений и из PHP-сценария. Помогут в этом несколько встроенных функций языка.

Два вида запросов

Следует разделять все SQL-запросы на две группы:

  1. Чтение информации (SELECT).
  2. Модификация (UPDATE, INSERT, DELETE).

При выполнении запросов из среды PHP, запросы из второй группы возвращают только результат их исполнения: успех или ошибку.
Запросы первой группы при успешном выполнении возвращают специальный ресурс результата. Его, в свою очередь, можно преобразовать в ассоциативный массив (если нужна одна запись) или в двумерный массив (если требуется список записей).

Добавление записи

Вернёмся к нашему проекту — дневнику наблюдений за погодой. Начнём практическую работу с заполнения таблиц данными. Для начала добавим хотя бы один город в таблицу cities.

Выражение INSERT INTO используется для добавления новых записей в таблицу базы данных.

Составим корректный SQL-запрос на вставку записи с именем города, а затем выполним его путём передачи этого запроса в функцию mysqli_query() , чтобы добавить новые данные в таблицу.

Обратите внимание, что первым параметром для функциии mysqli_query() передаётся ресурс подключения, полученный от функции mysqli_connect() , вторым параметром следует строка с SQL-запросом.
При запросах на изменение данных (не SELECT) результатом выполнения будет логическое значение — true или false.
false будет означать, что запрос выполнить не удалось. Для получения строки с описанием ошибки существует функция mysqli_error($link) .

Функция insert id: как получить идентификатор добавленной записи

Следующим шагом будет добавление погодной записи для нового города.
Погодные записи хранит таблица weather_log, но, чтобы сослаться на город, необходимо знать идентификатор записи из таблицы cities.
Здесь пригодится функция mysqli_insert_id() .
Она принимает единственный аргумент — ресурс соединения, а возвращает идентификатор последней добавленной записи.

Теперь у нас есть всё необходимое, чтобы добавить погодную запись.
Вот как будет выглядеть комплексный пример с подключением к MySQL и добавлением двух новых записей:

Чтение записей

Другая частая операция при работе с базами данных в PHP — это получение записей из таблиц (запросы типа SELECT).
Составим SQL-запрос, который будет использовать SELECT выражение. Затем выполним этот запрос с помощью функции mysqli_query() , чтобы получить данные из таблицы.

В этом примере показано, как вывести все существующие города из таблицы cities:

В примере выше результат выполнения функции mysqli_query() сохранён в переменной $result .
Важно понимать, что в этой переменной находятся не данные из таблицы, а специальный тип данных — так называемая ссылка на результаты запроса.

Чтобы получить действительные данные, то есть записи из таблицы, следует использовать другую функцию — mysqli_fetch_array() — и передать ей единственным параметром эту самую ссылку.
Теперь каждый вызов функции mysqli_fetch_array() будет возвращать следующую запись из всего результирующего набора записей в виде ассоциативного массива.

Цикл while здесь используется для «прохода» по всем записям из полученного набора записей.
Значение поля каждой записи можно узнать просто обратившись по ключу этого ассоциативного массива.

Как получить сразу все записи в виде двумерного массива

Иногда бывает удобно после запроса на чтение не вызывать в цикле mysqli_fetch_array для извлечения очередной записи по порядку, а получить их сразу все одним вызовом. PHP так тоже умеет. Функция mysqli_fetch_all($res, MYSQLI_ASSOC) вернёт двумерный массив со всеми записями из результата последнего запроса.
Перепишем пример с показом существующих городов с её использованием:

Как узнать количество записей

Часто бывает необходимо узнать, сколько всего записей вернёт выполненный SQL запрос.
Это может помочь при организации постраничной навигации, или просто в качестве информации.
Узнать число записей поможет функция mysqli_num_rows() , которой следует передать ссылку на результат запроса.

Источник

Оцените статью