<?php
|
/*---------------------------------------------------------------*/
|
/*
|
Titre : Vérifie librement la disponibilité d'un Nom De Domaine.
|
|
URL : https://phpsources.net/code_s.php?id=371
|
Date édition : 12 Avril 2008
|
Date mise à jour : 26 Sept 2019
|
Rapport de la maj:
|
- fonctionnement du code vérifié
|
*/
|
/*---------------------------------------------------------------*/
|
|
$result = '';
|
$theNdd = trim($_POST['theNdd']);
|
$theExt = $_POST['theExt'];
|
|
if (!empty($theNdd) AND !empty($theExt)) {
|
|
$theNdd = preg_replace(array( '/http://www./',
|
'/http:///',
|
'/www./' ),
|
array( '', '', '') ,$theNdd);
|
|
$theNdd = preg_replace(array( '/.eu/',
|
'/.fr/',
|
'/.com/',
|
'/.net/',
|
'/.org/',
|
'/.info/',
|
'/.biz/',
|
'/.de/',
|
'/.me.uk/',
|
'/.co.uk/',
|
'/.org.uk/',
|
'/.ca/' ),
|
array( '', '', '', '', '', '', '', '', '', '', '', '') ,$theNdd);
|
|
$theNdd = escapeshellcmd($theNdd);
|
//on definit les case du tableau à  vérifier
|
$caseForVerif['.net']=7;
|
$caseForVerif['.com']=7;
|
$caseForVerif['.org']=0;
|
$caseForVerif['.fr']=13;
|
$caseForVerif['.ca']=5;
|
$caseForVerif['.info']=0;
|
$caseForVerif['.biz']=1;
|
$caseForVerif['.de']=35;
|
$caseForVerif['.eu']=50;
|
$caseForVerif['.me.uk']=30;
|
$caseForVerif['.co.uk']=30;
|
$caseForVerif['.org.uk']=40;
|
//on definit les phrase à  vérifier dans ces cases
|
$strForVerif['.com']='No match for "'.$theNdd.'.COM".';
|
$strForVerif['.fr']='%% No entries found in the AFNIC Database.';
|
$strForVerif['.net']='No match for "'.$theNdd.'.NET".';
|
$strForVerif['.org']='NOT FOUND';
|
$strForVerif['.ca']='';
|
$strForVerif['.info']='NOT FOUND';
|
$strForVerif['.biz']='';
|
$strForVerif['.de']='';
|
$strForVerif['.eu']='';
|
$strForVerif['.me.uk']='';
|
$strForVerif['.co.uk']='';
|
$strForVerif['.org.uk']='';
|
foreach($theExt as $anExt) {
|
$myArray="";
|
$anExt=escapeshellcmd($anExt);
|
exec('whois '.$theNdd.$anExt,$myArray,$retval);
|
$result.=(strtolower($myArray[$caseForVerif[$anExt]])==
|
strtolower($strForVerif[$anExt]))?"->> ".$theNdd.$anExt."
|
est libre<br/>":"->> ".$theNdd.$anExt."
|
est déjà  réservé<br />";
|
}
|
}
|
?>
|
|
<form action="" name="formVeirfNdd" enctype="multipart/form-data" method="post">
|
www.<input type="text" name="theNdd" value="<?php echo $theNdd; ?>" />
|
<input name="theExt[]" type="checkbox" value=".com" id="com" checked><label
|
for="com">.com</label>
|
<input name="theExt[]" type="checkbox" value=".eu" id="eu"><label
|
for="eu">.eu</label>
|
<input name="theExt[]" type="checkbox" value=".fr" id="fr"><label
|
for="fr">.fr</label>
|
<input name="theExt[]" type="checkbox" value=".net" id="net"><label
|
for="net">.net</label>
|
<input name="theExt[]" type="checkbox" value=".org" id="org"><label
|
for="org">.org</label>
|
<input name="theExt[]" type="checkbox" value=".info" id="info"><label
|
for="info">.info</label>
|
<input name="theExt[]" type="checkbox" value=".ca" id="ca"><label
|
for="ca">.ca</label>
|
<input name="theExt[]" type="checkbox" value=".biz" id="biz"><label
|
for="biz">.biz</label>
|
<input name="theExt[]" type="checkbox" value=".de" id="de"><label
|
for="de">.de</label>
|
<input name="theExt[]" type="checkbox" value=".me.uk" id="me.uk"><label
|
for="me.uk">me.uk</label>
|
<input name="theExt[]" type="checkbox" value=".co.uk" id="co.uk"><label
|
for="co.uk">co.uk</label>
|
<input name="theExt[]" type="checkbox" value=".org.uk" id="org.uk"><label
|
for="org.uk">org.uk</label>
|
<input type="submit" value="Vérifier">
|
</form>
|
|
<?php echo '<h3>'.$result.'</h3>'; ?>
|
|
|
Alainwebcreator
30 Juin 2015 à 05:35salut à tous, @Jean le script fonctionne bien, mes 2 sites ayant le .com comme domaines ont été signalé sans problème, merci de bien vouloir revoir ton code !
Invité
20 Jan 2012 à 14:43Comment intégrer le script ? je m'explique j'ai un site qui tourne su prestashop et j'ai un module qui fait appel à une page devis il y à que des fichiers php dans ce module devis , j'ai éssayer de nommer le script domaine.php dans le module devis mais rien de s'affiche, il y a aussi des fichiers Css dans ce module donc il faudrait qui il ai une corrélation entre php et Css . Si vous pouviez me donnez une piste ?
Invité
15 Jan 2011 à 17:02Bonjour, Super votre script, il marche pour tous les domaines sauf les .com .net .fr .org et c'est normal car il faut ajuster le code avec la liste des serveur, pourriez-vous svp nous montrer comment ajuster le code avec cette liste de NDD par exemple :
KOogar
12 Aout 2010 à 00:55Place print_r($myArray); à la ligne 84
et ensuite modifie la valeur de $caseForVerif['.com']=????
Invité
09 Aout 2010 à 20:15Super script, mais pour le .com j'ai testé un nom domaine libre mais il quand je teste avec votre script il m'indique il est déjà réserver, alors que c'est faut, dans cette ligne $caseForVerif['.com']=8; je souhaite modifier le LTD comment faire ? Merci
Invité
20 Fév 2010 à 22:27voila la correction du code pour le probleme concernant les // j'ai trouvé la réponse sur un forum anglais $theNdd = preg_replace(array( '/http:\/\/www./',
'/http:\/\//',
'/www./' ),
array( '', '', '') ,$theNdd);
Invité
31 Juil 2009 à 09:54merci pour ce script :-) testé et approuvé :-)
Invité
13 Jan 2009 à 10:28Ce script ne fonctionne plus pour la moitié des extensions !
Samfisher
07 Oct 2008 à 00:46bjr merci pour le script j lé bien essayé ca marche nickel, svp si je veu ajouter une autre exatonsion comme .ma jen é vraiment besoin merci de me rependre ds le plus bref delai
Scriptess
21 Avril 2008 à 17:24C'etait bien moi qui m'enmelait les pinceaux.
Merci pour ton aide ;)
KOogar
21 Avril 2008 à 16:23Il te faut enlever la totalité :
'/http:///',
'/www./' ),
array( '', '', '') ,$theNdd);
Scriptess
21 Avril 2008 à 16:13J'ai essayer les solutions que tu m'a donner mais j'ai toujours la meme erreur, et quand j'enleve l'ensemble , le script ne se lance plus, j'ai une erreur de syntaxe
A moins que je ne me soit trompé, aurait tu d'autres solutions ?
Merci d'avance
Et désolé pour les liens..
KOogar
21 Avril 2008 à 15:24Trés bonne nouvelle de voir ce code passer chez Sivit.
Pour ton probleme -> passe array ( '', '', '') ,$theNdd); sur 1 ligne. Cela peut venir de ton éditeur PHP. Si cela ne marche pas, tu peux enlever l'ensemble car ce preg ne fait que gérer les erreurs. L'application continuera de fonctionner normalement à condition que la saisie soit bonne.
Scriptess
21 Avril 2008 à 14:26Bonjour,
une fois la recherche du nom de domaine faites, ca m'affiche bien
Mais en meme temps, j'ai ca qui s'affiche aussi :
Warning: preg_replace() [function.preg-replace]: Unknown modifier '/' in ndd.php on line 46
cette fameuse ligne c'est :
Si vous savez d'ou cela peut venir, merci d'avance.