servnest/public/reg/register.php

54 lines
1.5 KiB
PHP
Raw Normal View History

2022-04-23 01:57:43 +02:00
<?php require "../../common/top.php"; ?>
2021-01-22 21:58:46 +01:00
Enregistrer la possession d'un domaine sur son compte.<br>
Ce domaine doit être composé uniquement d'au moins 4 lettres latines non accentuées.
2021-02-17 22:48:49 +01:00
<br>
<br>
<form method="post">
<div>
<label for="subdomain">Sous-domaine</label>
<br>
<input id="subdomain" pattern="<?= CONF['reg']['subdomain_regex'] ?>" required="" placeholder="niver" name="subdomain" type="text">.<?= CONF['reg']['registry'] ?>
</div>
2022-04-18 16:05:00 +02:00
<input value="Valider" type="submit">
2021-02-17 22:48:49 +01:00
</form>
<?php
if (isset($_POST['subdomain']) AND isset($_SESSION['username'])) {
2021-08-05 14:04:33 +02:00
2022-04-18 16:05:00 +02:00
antiCSRF();
2021-08-05 14:04:33 +02:00
if (preg_match("/" . CONF['reg']['subdomain_regex'] . "/", $_POST['subdomain'])) {
2021-02-17 22:48:49 +01:00
$domain = $_POST['subdomain'] . "." . CONF['reg']['registry'];
2021-02-17 22:48:49 +01:00
2022-04-18 16:05:00 +02:00
checkAbsoluteDomainFormat($domain);
2021-02-17 22:48:49 +01:00
2022-04-18 16:05:00 +02:00
if (regIsFree($domain)) {
$db = new PDO('sqlite:' . DB_PATH);
$stmt = $db->prepare("INSERT INTO registry(domain, username, last_renewal) VALUES(:domain, :username, :last_renewal)");
$username = $_SESSION['username'];
2021-02-17 22:48:49 +01:00
2022-04-18 16:05:00 +02:00
$time = date("Y-m-d H:i:s");
2021-02-17 22:48:49 +01:00
2022-04-18 16:05:00 +02:00
$stmt->bindParam(':domain', $domain);
$stmt->bindParam(':username', $username);
$stmt->bindParam(':last_renewal', $time);
2021-02-17 22:48:49 +01:00
2022-04-18 16:05:00 +02:00
$stmt->execute();
2021-02-17 22:48:49 +01:00
2022-04-18 16:05:00 +02:00
echo "Nouveau domaine enregistré";
2022-04-18 16:05:00 +02:00
} else {
echo "Le domaine " . $domain . " n'est pas disponible à l'enregistrement. Il est réservé ou déjà enregistré.";
}
} else {
echo "Erreur : Le nom de domaine doit être composé uniquement d'entre 4 et 63 lettres minuscules (a-z)";
}
2021-02-17 22:48:49 +01:00
}
2021-01-22 21:58:46 +01:00
2021-02-17 22:48:49 +01:00
?>
2021-01-22 21:58:46 +01:00
2022-04-23 01:57:43 +02:00
<?php require "../../common/bottom.php"; ?>