2014-03-16 5 views
-1

Как подсказывает название, при использовании mysqli_connect я получаю следующее сообщение об ошибке php_network_getaddresses: getaddrinfo не удался: ни имя_узел servname при условии, или не известен, в/Users/имя пользователя/Сайты/test.php on linez 2mysqli_connect не подключается к локальному

Предупреждение: mysqli_connect(): (HY000/2002): php_network_getaddresses: getaddrinfo failed: nodename или servname предоставлено или неизвестно в /Users/username/Sites/test.php в линии 2 Не удалось подключить:

<?php 
$link = mysqli_connect(‘localhost’, ‘username’, ‘password’); 
if (!$link) { 
    die('Could not connect: ' . mysql_error()); 
} 
echo 'Connected successfully'; 
mysql_close($link); 
?> 

Мой брандмауэр выключен, а apache2 включен, я могу просмотреть localhost/Username/Sites/test.php, а также войти в mysql с помощью localhost.

+0

Стандарт, имя пользователя - это корень, и нет пароля.Ваши определения там теперь читаются как localhost (works) имя пользователя как имя пользователя и пароль как пароль. Таким образом, вы также упустили тот факт, что вам нужно подключиться к базе данных, которая является четвертым значением внутри функции подключения mysqli. – Dorvalla

+0

'mysqli_connect' имеет четыре параметра. Вы забыли четвертый парам. то есть mysqli_connect ('localhost', 'username', 'password', 'your_database_name') '. –

ответ

3

откуда вы приносите эти цитаты? вы должны использовать одинарные кавычки.

попробовать это:

$link = mysqli_connect('localhost', 'username', 'password'); //you forgot the database 

и почему вы смешиваете между MySQLi и MySQL?

Как подключать к базе данных:

$link = mysqli_connect("localhost","username","password","database") or die("Error " . mysqli_error($link)); 

пожалуйста, прочитайте хорошо документация здесь http://se2.php.net/mysqli_select_db

0
$link = mysqli_connect(‘localhost’, ‘username’, ‘password’); 

должен быть

$link = mysqli_connect(‘localhost’, ‘username’, ‘password’, 'yourdatabase'); 
1

Если вы используете TextEdit приложение, которое строится в OS X затем, отключить/снимите отметку функцию «Умные кавычки» на панели настроек TextEdit, а затем вам придется заменить все существующие кавычки в коде.

+0

После нескольких часов .... – Feyyaz

0

Try:

$dbc = mysqli_connect('localhost', 'username', 'password', 'phonehome','3306','/Applications/XAMPP/xamppfiles/var/mysql/mysql.sock') OR die('Could not connect to database. Verify connection.php settings and SQL DB is running. Error: '.mysqli_connect_error()); 

Что является определяющим ваше имя хоста, порт, имя пользователя, пароль, дб и MySql сокет, он работал для меня.

0

По какой-то причине я не могу вспомнить (я думаю, что я читал его где-то еще на SO, на самом деле), когда вы подключаетесь к 'localhost' с помощью mysqli(), вам действительно нужно указать, какой номер порта вы подключаете, хорошо:

$dbconn = new mysqli('localhost:3306', /*your username*/, /*your password*/, /*your database name*/);

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

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

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