Почему не работает функция?

Здравствуйте! У меня есть вот такая функция PHP:
function add_domain ($login,$domain,$hostname,$ip) {
     $newzone = "zone \"$domain\" IN {
        type master;
        file \"/etc/bind/$domain.conf\";
};".PHP_EOL;
$mysqli = new mysqli ("localhost" , "***", "***","***");
 $check = $mysqli->query("SELECT userid FROM *** WHERE domain = '$domain'");
 if ($check->num_rows!=0) { echo "Доменное имя $domain, которое Вы пытаетесь добавить, уже есть в системе"; exit;}
else {
     $tpl = "@ 300 IN SOA ns1.$hostname. hostmaster.$hostname. 1483099708 300 600 86400 300
@ 600 IN A $ip
@ 300 IN NS ns1.$hostname.
@ 300 IN NS ns2.$hostname.
www 600 IN A $ip";
$path = "/etc/bind/$domain.conf";
echo "Функция работает";
file_put_contents ($path,$tpl) or die ("Ошибка записи файла.");
file_put_contents ("/etc/bind/named.conf" ,$newzone) or die ("Ошибка записи основного конфигурационного файла.");
$add = $mysqli->query("INSERT INTO *** (userid,domain) VALUES ('{$login}' , '{$domain}')");
}
  }

И её вызов:
<?php
$login = "admin";
if (isset($_POST['add_domain'])) {
 
   $domain = $_POST['domain'];
   $hostname = "***.ru";
$ip = $_SERVER['SERVER_ADDR'];
add_domain ($login,$domain,$hostname,$ip);
 }
?>

Вопрос: почему-то эта функция не работает, хотя если сам код вставить (не в виде функции) - всё работает.
  • Вопрос задан
  • 132 просмотра
Решения вопроса 2
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Какие ошибки в логах показаны?
Ответ написан
streetflush
@streetflush
А файлик с функцией подключен к файлу вызова?
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы