Formation par Olivier Duffez

Formation au référencement par Olivier Duffez, créateur de WebRankInfo !
Une formule efficace alliant théorie et pratique, avec une haute disponibilité des intervenants
Cette formule a déjà convaincu plusieurs centaines d'entreprises, pourquoi pas vous ?
Réservez vite votre place en ligne (convention possible pour imputer sur le budget formation)

Formation référencement Marseille

PHP - Code vérifier la disponibilité d'un nom de domaine

Aller à la page 1, 2  Suivante
Poster un nouveau sujet Imprimer cette discussion    Forum -> Noms de domaine et référencement   Les dernières discussions de ce forum sont disponibles au format RSS
Voir le sujet précédent :: Voir le sujet suivant  
Auteur Message
 
KOogar
WRInaute accro
WRInaute accro

Inscrit le: 16 Nov 2004
Messages: 2727
Localisation: Bangalore +3h30

URL permanente de ce messagePosté le : Mer Mar 26, 2008 1:44    Sujet du message: PHP - Code vérifier la disponibilité d'un nom de domaine

Salut les Wrinautes !!

Apres des mois a surfer sur WRI je sais que beaucoup d'entre vous attendent ce code avec impatience. Il a été testé chez OVH sur 1 serveur mutualisé et retourne sans erreur la disponibilité d'un nom de domaine avec les extentions suivantes:

.com .eu .fr .net .org .info .ca .biz .de me.uk co.uk org.uk

Sans plus attendre, voici le code:

Code:
<?php

$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&eacute;j&agrave; r&eacute;serv&eacute;<br />";
        }
}
?>

<form action="<?php echo $_SERVER['REQUEST_URI']; ?>" 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&eacute;rifier">
</form>

<?php echo '<h3>'.$result.'</h3>';  ?>


Dernière édition par KOogar le Ven Mar 28, 2008 12:16; édité 1 fois
 
KOogar Visiter le site web du posteur
capleton59
WRInaute impliqué
WRInaute impliqué

Inscrit le: 24 Avr 2005
Messages: 302
Localisation: Lille

URL permanente de ce messagePosté le : Mer Mar 26, 2008 10:03    Sujet du message: PHP - Code vérifier la disponibilité d'un nom de domaine

Merci je vais tester ça Very Happy
 
capleton59 Visiter le site web du posteur
DadouDuck
WRInaute passionné
WRInaute passionné

Inscrit le: 28 Mai 2007
Messages: 526

URL permanente de ce messagePosté le : Mer Mar 26, 2008 10:07    Sujet du message: PHP - Code vérifier la disponibilité d'un nom de domaine

Comment tu testes la dispo? tu exécutes une appli du serveur?
 
DadouDuck
Basque
WRInaute occasionnel
WRInaute occasionnel

Inscrit le: 19 Mar 2008
Messages: 171

URL permanente de ce messagePosté le : Mer Mar 26, 2008 10:11    Sujet du message: PHP - Code vérifier la disponibilité d'un nom de domaine

Citation:
exec('whois '.$theNdd.$anExt,$myArray,$retval);
 
Basque Visiter le site web du posteur
DadouDuck
WRInaute passionné
WRInaute passionné

Inscrit le: 28 Mai 2007
Messages: 526

URL permanente de ce messagePosté le : Mer Mar 26, 2008 10:52    Sujet du message: PHP - Code vérifier la disponibilité d'un nom de domaine

Ben justement, exec c'est pas pour exécuter une appli du serveur??

Enfin, il y a un problème, c'est que c'est très long pour tester
 
DadouDuck
webmasterlamogere
WRInaute accro
WRInaute accro

Inscrit le: 17 Déc 2006
Messages: 1143
Localisation: Montpellier & Lyon

URL permanente de ce messagePosté le : Mer Mar 26, 2008 13:06    Sujet du message: PHP - Code vérifier la disponibilité d'un nom de domaine

sinon il y a des versions sans exec mais avec socket : http://www.cybwarrior.com/FR/download/PHP/WHOIS.html
 
webmasterlamogere Visiter le site web du posteur
KOogar
WRInaute accro
WRInaute accro

Inscrit le: 16 Nov 2004
Messages: 2727
Localisation: Bangalore +3h30

URL permanente de ce messagePosté le : Mer Mar 26, 2008 13:24    Sujet du message: PHP - Code vérifier la disponibilité d'un nom de domaine

webmasterlamogere a écrit:
sinon il y a des versions sans exec mais avec socket : http://www.cybwarrior.com/FR/download/PHP/WHOIS.html


lu,

http://www.cybwarrior.com/download/dl/php/whois/index.php
"Le nom de domaine phpsources.org semble libre" ...

ca ma l'air un peu foireux comme script..

DadouDuck a écrit:

Enfin, il y a un problème, c'est que c'est très long pour tester


Pas chez moi
 
KOogar Visiter le site web du posteur
DadouDuck
WRInaute passionné
WRInaute passionné

Inscrit le: 28 Mai 2007
Messages: 526

URL permanente de ce messagePosté le : Mer Mar 26, 2008 17:58    Sujet du message: PHP - Code vérifier la disponibilité d'un nom de domaine

J'ai fais un benchmark dessus, et voila ce que j'obtiens : 120.06942 secondes c'est pour cela que je voudrais comprendre le fonctionnement du whois pour savoir pourquoi j'ai autant de délais d'attente
 
DadouDuck
webmasterlamogere
WRInaute accro
WRInaute accro

Inscrit le: 17 Déc 2006
Messages: 1143
Localisation: Montpellier & Lyon

URL permanente de ce messagePosté le : Mer Mar 26, 2008 18:03    Sujet du message: PHP - Code vérifier la disponibilité d'un nom de domaine

KOogar a écrit:
http://www.cybwarrior.com/download/dl/php/whois/index.php
"Le nom de domaine phpsources.org semble libre" ...

ca ma l'air un peu foireux comme script..

en effet ça marche pas avec les .org
le serveur whois interrogé ne doit pas être le bon
 
webmasterlamogere Visiter le site web du posteur
pppplus
Nouveau WRInaute

Inscrit le: 30 Oct 2006
Messages: 10

URL permanente de ce messagePosté le : Mer Mar 26, 2008 23:01    Sujet du message: PHP - Code vérifier la disponibilité d'un nom de domaine

Bonjour,

Comment fait-on pour autoriser son propre serveur à pouvoir exécuter ces scripts whois ?

Depuis que je suis sur mon nouveau serveur, j'ai une erreur fsockopen :
Code:
Warning: fsockopen() [function.fsockopen]: unable to connect to whois.verisign-grs.com:43 (Connection timed out) in


Les techniciens me disent que c'est un problème de firewall et que c'est "mon" problème. Ils me l'avaient débloqué l'an passé sur le précédent serveur, mais rien à faire cette année. Evil or Very Mad .
Donc où peut-on régler ce problème ?
Serveur privé sur Linux, avec plesk8.3
J'ai accès au serveur par Putty et Winscp.

Si vous savez comment faire, ce sera super sympa de m'aider !
 
pppplus
efz
WRInaute occasionnel
WRInaute occasionnel

Inscrit le: 16 Nov 2005
Messages: 171
Localisation: NANTES

URL permanente de ce messagePosté le : Jeu Mar 27, 2008 12:34    Sujet du message: PHP - Code vérifier la disponibilité d'un nom de domaine

Ton script fonctionne très bien, je le garde sous le coude, ça peut servir Wink

Merci KOogar pour cette contribution Smile

ps: une petite reco pour toi Wink
 
efz Visiter le site web du posteur
KOogar
WRInaute accro
WRInaute accro

Inscrit le: 16 Nov 2004
Messages: 2727
Localisation: Bangalore +3h30

URL permanente de ce messagePosté le : Ven Mar 28, 2008 12:26    Sujet du message: PHP - Code vérifier la disponibilité d'un nom de domaine

efz a écrit:
Ton script fonctionne très bien, je le garde sous le coude, ça peut servir Wink

Merci KOogar pour cette contribution Smile

ps: une petite reco pour toi Wink


c'est pas moi qui mérite la reco mais le script Wink

Je viens de mettre la mouture définitive, j'ai préféré gérer les erreurs directement sans rapports.
Par exemple si le client met malencontreusement le "http://" dans la requete, au lieu de lui demander de l'enlever, le script le fait pour lui et le client peut continuer d'envoyer ses requêtes sans perdre de temps.
 
KOogar Visiter le site web du posteur
maddanny
WRInaute impliqué
WRInaute impliqué

Inscrit le: 23 Mar 2005
Messages: 263

URL permanente de ce messagePosté le : Ven Mar 28, 2008 12:55    Sujet du message: PHP - Code vérifier la disponibilité d'un nom de domaine

Le script est sympa sauf que le whois n'est pas un outil pour verifier la disponibilité d'un nom de domaine !
Pour verifier à coup sur la dispo d'un NDD, mieux vaut utiliser les API d'un registrar, c'est plus efficace et fiable Wink

MADdanny
 
maddanny
KOogar
WRInaute accro
WRInaute accro

Inscrit le: 16 Nov 2004
Messages: 2727
Localisation: Bangalore +3h30

URL permanente de ce messagePosté le : Ven Mar 28, 2008 13:37    Sujet du message: PHP - Code vérifier la disponibilité d'un nom de domaine

tu peux nous donner le code dont tu parles ?

Les rapports ne changent pas comme ca, ce code avec le whois devrait rester actualisé pendant quelques années.
 
KOogar Visiter le site web du posteur
webmasterlamogere
WRInaute accro
WRInaute accro

Inscrit le: 17 Déc 2006
Messages: 1143
Localisation: Montpellier & Lyon

URL permanente de ce messagePosté le : Ven Mar 28, 2008 16:59    Sujet du message: PHP - Code vérifier la disponibilité d'un nom de domaine

J'ai trouvé l'API OVH. la spec est là : http://www.ovh.com/soapi/fr/domainCheck.xml
il suffit juste de renseigner son login et mot de passe OVH et remplacer example.com par le domaine a tester.
Ce script ne marche qu'en PHP5. il faut donc mettre une extension php5 ou ajouter la ligne suivante dans le .htaccess :
Code:
SetEnv PHP_VER 5

Code:
<?php
$soap = new SoapClient('http://www.ovh.com/soapi/ovh.wsdl');

//login
try {
   $login = "XXXXX-ovh";
   $password = "********";
   $session = $soap->login($login,$password,null);
} catch(SoapFault $fault) {
   echo "Error : ".$fault . '<br>';
}

//domainCheck
try {
   $result = $soap->domainCheck($session, 'example.com');
   foreach($result as $value) {
      echo $value->reason . '<br>';
   }
} catch(SoapFault $fault) {
   echo "Error : ".$fault . '<br>';
}

//logout
try {
 $result = $soap->logout($session);
} catch(SoapFault $fault) {
 echo "Error : ".$fault . '<br>';
}
?>
 
webmasterlamogere Visiter le site web du posteur
 
Montrer les messages depuis:   
Revenir en haut    Forum -> Noms de domaine et référencement Toutes les heures sont au format GMT + 2 Heures
Page 1 sur 2 - Aller à la page 1, 2  Suivante
Connexion
Nom d'utilisateur:    Mot de passe:      Se connecter automatiquement à chaque visite    

Définitions :

CLIQUEZ ICI pour vous inscrire à WebRankInfo (forum, annuaire, outils...)

Connexion

© 2001-2005 phpBB Group, support français
Personnalisation : WebRankInfo ™


 ODP  Firefox  Alsacreations  annuaire webmaster Yagoort