2015-12-14 3 views
1

Я использую метод POST для вставки некоторых данных в db на моем сервере. Это мой файл connection.php, который хранится в моем http://www.url.com/public_html.Сбой подключения: php_network_getaddresses: getaddrinfo не удалось: имя или услуга неизвестны

<?php 

$servername = "http://www.url.com"; 
$username = "db_username"; 
$password = "db_password"; 
$databaseName = "db_name"; 

$connect = new mysqli($servername,$username,$password,$databaseName); 

if ($connect->connect_error) { 
    die("Connection failed: " . $connect->connect_error); 
} 
echo "Connected successfully"; 

?> 

Это insert.php файл также хранится в http://www.url.com/public_html, что я использую для вставки данных в базе данных.

<?php 

if($_SERVER["REQUEST_METHOD"]=="POST"){ 
    require'connection.php'; 
    createStudent(); 
} 
function createStudent(){ 

    global $connect; 

    $name = $_POST["name"]; 
    $lastname = $_POST["lastname"]; 
    $age = $_POST["age"]; 

    $query="INSERT INTO `demo` ( `name` , `lastname` , `age`) 
    VALUES ('$name','$lastname','$age')"; 
    mysqli_query($connect,$query)or die (mysqli_error($connect)); 
    mysqli_close($connect); 
} 
?> 

Я использую почтальона, и мое приложение для Android, чтобы проверить это, но им получить: не удалось соединения: php_network_getaddresses: getaddrinfo не удалось: Имя или служба не известны ошибки.

Я не разработчик php, но я не вижу никакой ошибки в моих php-файлах, поэтому любая помощь будет приветствоваться.

Заранее спасибо.

+0

Если ваша база данных находится на одной машине, используйте '$ servername =" localhost "'. –

+0

Это потому, что вы не можете разрешить имя хоста. Возможно, проблемы с DNS, хост недоступен ... – Apb

ответ

3

Благодаря Prerak,

Это ответ, моя база данных находится на той же машине, так что я просто необходимо для редактирования:

$servername = "localhost" 

Теперь все работает нормально.

4

Значение, указанное вами для $servername, не является именем хоста, а скорее URL-адресом или именем ресурса. Имя хоста будет всего www.url.com.

Конечно, как вы уже обнаружили, localhost - это правильное имя хоста, если клиент и сервер находятся в одном окне.

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