Как писал по названию, у меня есть эта проблема. У меня есть данные, которые позволяют мне подключаться к моей базе данных, хранящейся в файле. Получив эти сведения, я попытался установить связь с базой данных, но получаю предупреждение
Предупреждение: mysql_connect (): php_network_getaddresses: getaddrinfo не удалось: такой хост не известен. в C: \ wamp \ www \ jstool \ connect.php в строке 21
дважды, а результат подключения – ничто, даже если значения верны (например, если я попытался подключить запись значений, которые он работает). Вот файл txt:
localhost root pwd
Вот код:
ini_set("auto_detect_line_endings", true); $handle = fopen("config.txt", "r"); if ($handle) { $i=0; while (($line = fgets($handle)) !== false) { $ln[$i]= $line; $i++; } } define("SERVER", $ln[0]); define("USER", $ln[1]); define("PASSWORD", $ln[2]); $db = mysql_connect(SERVER,USER,PASSWORD); if (!$db) { [...] } else { [.. reach database ..] }
если я просто напишу
$db = mysql_connect("localhost", "root", "pwd");
которые, как вы видите, являются значениями, содержащимися в txt-файле, отлично работают.
попробуйте использовать trim ()
define("SERVER", trim($ln[0])); define("USER", trim($ln[1])); define("PASSWORD", trim($ln[2]));
из руководства fgets ()
Чтение заканчивается, когда длина – 1 байт, или новая строка (которая включена в возвращаемое значение)
поэтому ваше чтение включает в себя новые строки.