Savoir si un Nom de domaine est réservé avec le WHOIS

  Information

Ce code fonctionne simplement en le lançant, j'ai seulement mis le NIC fr, a vous de rajouter des nic a jour dans le tableau $servers[]

Pour avoir la liste des NIC vous trouverez des ressources sur wikipedia: http://de.wikipedia.org/wiki/Whois

  code source classé dans  Applications

 
 01    
 02    
 03    
 04    
 05    
 06    
 07    
 08    
 09    
 10    
 11    
 12    
 13    
 14    
 15    
 16    
 17    
 18    
 19    
 20    
 21    
 22    
 23    
 24    
 25    
 26    
 27    
 28    
 29    
 30    
 31    
 32    
 33    
 34    
 35    
 36    
 37    
 38    
 39    
 40    
 41    
 42    
 43    
 44    
 45    
 46    
 47    
 48    
 49    
 50    
 51    
 52    
 53    
 54    
 55    
 56    
 57    
 58    
                               
<?php
/*---------------------------------------------------------------*/
/*
    Titre : Savoir si un Nom de domaine est réservé avec le WHOIS                                                       
                                                                                                                          
    URL   : https://phpsources.net/code_s.php?id=1078
    Auteur           : sheppy1                                                                                            
    Date édition     : 25 Juil 2019                                                                                       
    Date mise à jour : 13 Aout 2019                                                                                      
    Rapport de la maj:                                                                                                    
    - fonctionnement du code vérifié                                                                                    
*/
/*---------------------------------------------------------------*/
     function whois_query($domain) {
      
        // fix the domain name:
        $domain strtolower(trim($domain));
        $domain preg_replace('/^http:\/\//i'''$domain);
        $domain preg_replace('/^www\./i'''$domain);
        $domain explode('/'$domain);
        $domain trim($domain[0]);
      
        // split the TLD from domain name
        $_domain explode('.'$domain);
        $lst count($_domain)-1;
        $ext $_domain[$lst];
     
        $servers array(
     
            // "net" => "whois.internic.net",
            // "com" => "whois.internic.net",
            "fr" => "whois.nic.fr"
     
        );
      
        if (!isset($servers[$ext])){
            die('Erreur: Aucun serveur nic correspondant de trouver!');
        }
      
        $nic_server $servers[$ext];
      
        $output '';
      
        // connect to whois server:
        if ($conn fsockopen ($nic_server43)) {
            fputs($conn$domain."\r\n");
            while(!feof($conn)) {
                $output .= fgets($conn,128);
            }
            fclose($conn);
        }
     else { die('Erreur: Impossible de se connecter a ' $nic_server '!'); }
      
        return $output;
    }
?>

Exemple :

 
 01    
 02    
 03    
 04    
 05    
 06    
 07    
 08    
 09    
                                
<?php
    print whois_query('elysee.fr');
    // Affiche (le message ici est cropé volontairement)
    // (...)  type: ORGANIZATION contact: CELLULE ...
    // address: CELLULE RESEAU DE LA pres....
    // Branly address: ....
?>

          Fonctions du code - Doc officielle PHP

   php.net   Description Versions PHP OUTIL
   array Crée un tableau PHP 4, PHP 5, PHP 7, PHP 8
   count Compte le nombre d'éléments d'un tableau ou le nombre de propriétés d'un objet PHP 4, PHP 5, PHP 7, PHP 8
   die Alias de la fonction exit() PHP 4, PHP 5, PHP 7, PHP 8
   explode Coupe une chaîne en segments PHP 4, PHP 5, PHP 7, PHP 8
   fclose Ferme un fichier PHP 4, PHP 5, PHP 7, PHP 8
   feof Teste la fin du fichier PHP 4, PHP 5, PHP 7, PHP 8
   fgets Renvoie la ligne courante sur laquelle se trouve le pointeur du fichier PHP 4, PHP 5, PHP 7, PHP 8
   fputs Alias de fwrite() PHP 4, PHP 5, PHP 7, PHP 8
   fsockopen Ouvre une socket de connexion Internet ou Unix PHP 4, PHP 5, PHP 7, PHP 8
   isset Détermine si une variable est affectée PHP 4, PHP 5, PHP 7, PHP 8
   preg_replace Rechercher et remplacer par expression rationnelle standard PHP 4, PHP 5, PHP 7, PHP 8
   print Affiche une chaîne de caractères PHP 4, PHP 5, PHP 7, PHP 8
   return Retourne le controle du programme au module appelant. PHP 4, PHP 5, PHP 7, PHP 8
   strtolower Renvoie une chaîne en minuscules PHP 4, PHP 5, PHP 7, PHP 8
   trim Supprime les espaces (ou d'autres caractères) en début et fin de chaîne PHP 4, PHP 5, PHP 7, PHP 8

   Dites merci aux auteurs pour leurs travail, ça ne coûte rien et ça fait toujours plaisir wink

[2]

  • avatar

    Sheppy1

    25 Juil 2019 à 16:35

    Elle est pas bridé dans le sens ou il faut juste ajouter les serveurs NIC.  Je n'ai mis que le FR car il est important que chaque serveur NIC soit interrogé 1 par 1. On interroge pas un serveur NIC comme ca, par ex essayez d'interroger le NIC DE a partir d'un serveur FR ca ne va pas passer. Idem, si un serveur chinois interroge le NIC FR il va se faire jeter. C'est vraiment très particulier le WHOIS, tout dépend de la localisation du serveur qui envoie la requête. Faut comprendre, les serveurs NIC reçoivent des millions de requêtes par jour, ils filtrent au maximum.

  • avatar

    Administrateur

    25 Juil 2019 à 16:16

    Merci pour ta contribution, pourquoi avoir bridé ta fonction au NIC fr ?


 Autres snippets qui pourraient vous intéressez

Savoir si plusieurs Nom de Domaines sont réservés

Compatibilité : PHP 5, PHP 7

Fonction fiable permettant d'effectuer une recherche de disponibilité d'un nom de domaine auprès des serveurs whois.

Partager la meme session sur votre domaine et sous domaine

Compatibilité : PHP 5, PHP 7

Ce code permet à votre domaine et à vos sous domaines de partager la même session. Attention à ne pas mettre de texte, de html avant ce code.

Savoir si 1 valeur de session a déjà été déclaré

Compatibilité : PHP 5, PHP 7

Savoir si une valeur appartient déjà à la session.

Savoir si le serveur FTP est disponible / en ligne - PHP Sources

Compatibilité : PHP 5, PHP 7

Si vous avez des problèmes de connection avec votre FTP, voici un code qui vous permet de savoir si le serveur FTP est disponible ou ne l'est pas.

Test une chaine pour savoir si c'est de l'UTF8 via PHP

Compatibilité : PHP 5, PHP 7

Pour vos passages de la norme ISO à la norme UTF8, test utile pour savoir si vous devez ou non ré encoder en UTF8

Présentation de PHP

PHP débutant et initié 50 Tutoriel

Présentation de MySQL

avatar

Sheppy1

  25 Juil 2019

  SOURCE   Télécharger

Information sur les mises à jour

Dernière mise à jour :

    13 Aout 2019
    fonctionnement du code vérifié

1 679 Vues
Compatibilité
PHP 5, 7 et 8+