servnest/ns/zone.php

45 lines
1.5 KiB
PHP
Raw Normal View History

2021-01-22 21:58:46 +01:00
<?php require "../top.inc.php"; ?>
<p>
Ici vous pouvez ajouter une zone sur le serveur ns1.atope.art
</p>
2021-01-23 17:26:46 +01:00
<form method="post">
2021-01-22 21:58:46 +01:00
<label for="domain">Domaine</label><br>
<input placeholder="niver.atope.art" id="domain" name="domain" type="text"/><br>
<input type="submit"/>
</form>
<?php
if (isset($_POST['domain']) AND isset($_SESSION['username'])) {
if (filter_var($_POST['domain'], FILTER_VALIDATE_DOMAIN)) {
$db = new PDO('sqlite:' . $dbPath);
$stmt = $db->prepare("INSERT INTO zones(zone, username) VALUES(:zone, :username)");
// Bind parameters to statement variables
$stmt->bindParam(':zone', $_POST['domain']);
$stmt->bindParam(':username', $_SESSION['username']);
$stmt->execute();
exec("cp /var/lib/knot/zones/template /var/lib/knot/zones/" . $_POST['domain'] . ".zone");
exec("sed -i 's/maison.atope.art/" . $_POST['domain'] . "/g' /var/lib/knot/zones/" . $_POST['domain'] . ".zone");
exec("knotc conf-begin");
exec("knotc conf-set 'zone[" . $_POST['domain'] . "]'");
exec("knotc conf-set 'zone[" . $_POST['domain'] . "].file' '" . $_POST['domain'] . ".zone'");
exec("knotc conf-commit");
echo "Formulaire traité !!";
} else {
echo "Erreur : Le domaine n'est pas valide";
}
} else {
echo "Rien n'a été reçu lors du dernière chargement";
}
?>
<?php require "../bottom.inc.php"; ?>