2016-05-31 1 views
0

Я разработал проект в PHP и преобразовал его в project.exe с помощью ZZEE PhpExe, он отлично работает на одном ПК, где установлен WAMP.Ошибка в mysql_connect() с использованием ZZEE между двумя ПК

Я подключил другой компьютер к основному серверу, используя LAN, и передал project.exe, который был выполнен. Мне удалось открыть проект на другом ПК, но он не может подключиться к MySql. поднятием этой ошибки

Предупреждение: mysql_connect() [function.mysql-Connect]: Не удается подключиться к серверу MySQL на 'локальный' (10061) в/WWW/ИНК/connect.php по линии 13

Я пытался использовать Firefox для проверки, и он работает без ошибок или предупреждений с помощью браузеров. Я пошел менять имя сервера connect.php на IP-адрес локальной сети. Например,

$ hostname = "localhost"; до $ hostname = "192.168.1.3";

После изменений я пересобрать проект, а затем еще одно предупреждение:

Предупреждение: mysql_connect(): Хост 'DESKTOP-VLU1NVA' не разрешено подключаться к этому серверу MySQL в C: \ xampp \ htdocs \ clinicx \ inc \ connect.php в строке 13

Пожалуйста, скажите мне, что делать.

+1

Функции 'mysql_' устарели и больше не должны использоваться. Вместо этого используйте MySQLi или PDO. – AntoineB

+1

Возможный дубликат [Host 'xxx.xx.xxx.xxx' не разрешен для подключения к этому серверу MySQL] (http://stackoverflow.com/questions/1559955/host-xxx-xx-xxx-xxx-is- not-allowed-to-connect-to-this-mysql-server) –

+1

Замечание Per @ AntoineB, вы должны избегать использования функций 'mysql_xxx'. Они считались плохой практикой уже более десяти лет и полностью удалены из последних версий PHP. Это означает, что ваш код не будет работать, если вы когда-либо обновите свою версию PHP. Исправьте это сейчас, потому что это будет намного более серьезной проблемой для вас, если вы вынуждены позже ее исправить. – Simba

ответ

0

Необходимо предоставить удаленный доступ к ПК MySQL-серверу. Проверьте команду GRANT для MySQL: http://dev.mysql.com/doc/refman/5.7/en/grant.html

очень небезопасный способ сделать это:

GRANT ALL ON *.* to '<a username>'@'192.168.1.%'; 

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

+0

Если я добавлю новую привилегию из phpmyadmin, она будет работать, и мне нужно изменить конфигурацию connect.php? '$ hostname =" localhost "; \t \t $ username = "root"; \t \t $ password = ""; \t \t $ dbh1 = mysql_connect ($ hostname, $ username, $ password); $ dbh2 = mysql_connect ($ hostname, $ username, $ password, true); $ dbh3 = mysql_connect ($ hostname, $ username, $ password, true); mysql_select_db ('clinic_r', $ dbh1); mysql_select_db ('clinic_x', $ dbh2); mysql_select_db ('clinic', $ dbh3); ' –

+0

Новый (удаленный) сервер должен подключиться к исходному IP-адресу серверов, а не« localhost »(как вы сами написали в своем вопросе), поэтому используйте $ hostname =" 192.168.1.3 ", при этом следующее должно предоставить вам доступ: GRANT ALL ON \ *. \ * To 'root'@'192.168.1.%'; –

Смежные вопросы