Вызов неопределенной функции mysql_connect () ошибка, даже если установлен PHP - PullRequest
0 голосов
/ 20 февраля 2012

Я пытаюсь подключиться к моему локальному серверу MySQL через php. поэтому мой код выглядит следующим образом:

$con = mysql_connect("localhost", "user", "password");
mysql_select_db("database", $con) or die('ERROR 4');

хорошо, мы все видели это раньше.

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

Есть ли способ сделать так, чтобы код PHP подключался к базе данных mysql через локальную ссылку? Или мне нужно изучить подключение к базе данных mysql через IP-адрес?

редактирование: Чтобы уточнить, когда я получаю доступ к сценарию на сервере откуда-то еще, он не работает

edit 2: Когда я проверяю журнал ошибок, он гласит «Вызов неопределенной функции mysql_connect ()»

Ответы [ 3 ]

1 голос
/ 05 сентября 2013

Если вы не хотите зацикливаться на разных конфигурациях, вы можете попробовать загрузить расширение mysql.so во время выполнения с помощью dl (), см. http://www.php.net/manual/en/function.dl.php

1 голос
/ 21 февраля 2012

Когда вы тестируете это локально, вы делаете это через командную строку (CLI). Когда вы тестируете это удаленно, вы делаете это через браузер (CGI). Существуют разные файлы конфигурации для этих двух режимов. Вам нужно будет отредактировать файл конфигурации CGI, включив в него расширение MySQL.

Быстрое замечание : вы не должны связываться с базой данных MySQL через mysql_connect и mysql_query. Вам лучше использовать уровень PDO и подготовленные операторы, так как это поможет вам лучше защитить от SQL-инъекций.

0 голосов
/ 01 апреля 2012

MySql API - это аддон, который поставляется с PHP в большинстве случаев - у меня была только одна конфигурация, где он не был установлен (сервер Solaris, на котором PHP был установлен в качестве вторичной цели).Веб-сайт PHP - лучшее место для информации об установке:

http://www.php.net/manual/en/mysql.installation.php

Если вы посмотрите параметры установки в phpinfo () и сравните их с приведенной выше ссылкой, вы можете увидеть, гдепроблема в том, что для меня команда Configure включила --without-mysql, который фактически преднамеренно пропустил функции mysql_ *.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...