بررسی موجود بودن دامنه با PHP
رزرو بودن دامنه با PHP – خیلی از whmcs ها که دامنه و هاست را به کاربران ارائه می دهند نیازمند اسکریپتی هستند که قبل از هر کاری دامنه کاربر را بررسی کند که آیا آزاد است برای خرید یا خیر .
این پروژه دارای 2 اسکریپت است :
- index.php که ورودی URL را از کاربر دریافت می کند
- check.domain.php که دامنه را با وبسایت who.is بررسی میکند.
دموی برنامه
اسکریپت index.php
فرم و ورودی دامنه را در این صفحه از کاربر دریافت می کنیم .
<!DOCTYPE html> <html lang="fa"> <head> <meta charset="UTF-8"> <title>Rapidcode.iR - سورس کد</title> <link rel="stylesheet" href="static/css/main.css"> </head> <body> <div class="container"> <a id="introduce" href="https://rapidcode.ir" target="_blank">رپید کد • کتابخانه مجازی برنامه نویسان</a> <form action="check.domain.php" method="POST"> <label>دامنه :</label> <input type="text" id="domain" name="domain" placeholder="دامنه خود را وارد نمایید"> <input type="hidden" id="referral" name="referral" value=""> <input type="submit" id="check" value="جستجو"> </form> <?php if(@$_GET['msg']): ?> <div id="info"><?php echo $_GET['msg'] ?></div> <?php endif; ?> </div> <script type="text/javascript"> const referralDOM = document.getElementById("referral"); referralDOM.value = location.origin + location.pathname; </script> </body> </html>
اسکریپت check.domain.php
پس از ثبت فرم کاربر به این اسکریپت هدایت می شود تا داده ها را پردازش کند و بعد از آن با کمک header به صفحه index.php ریدایرکت می شود اما با پیغام مبنی بر موجود / ناموجود بودن دامنه .
<?php $referral = $_POST['referral']; $domain = @$_POST['domain']; if(!$domain) die("دامنه ای وارد نشده"); $html = file_get_contents("https://who.is/whois/{$domain}"); $res = strpos($html, "%ERROR:101: no entries found") || strpos($html, "No match for"); $available = "موجود است"; if($res === false) $available = "ناموجود می باشد"; header("Location: {$referral}?msg=دامنه {$domain} {$available}"); ?>
استایل برنامه با فایل main.css
#info{ width: 100%; padding: 25px 5px; border-radius: 4px; color: white; background-color: #009688; font-size: 20px; font-weight: bold; margin-top: 25px; }
ارسال نظر