Php et Whois

Bonjour tout le monde,
Je souhaite savoir si quelqu'un dejà essayé de faire un whois pour un site avec php.
J'ai essayé de chercher et de modifier et tout, mais ça marche juste pour l extention que l utilisateur choisit.
Je veux que quand l utilisateur choisit le nom de domaine et l extension, il me donne un tableau ou il y a toutes les extensions avec une mention si le nom de domaine existe ou pas pour chaque extensions.
Merci mille fois pour votre aide.
 
Eh bien, il faut que tu récupère le domaine sans l'extension (explode('.', $str) te retourne un tableau contenant l'information)

Et que tu recherche, pour chaque extension, si elle est disponible ou non.
 
Code:
$whois_servers = array(
	"biz"=>"whois.pacificroot.com",
	"com"=>"rs.internic.net",
	"info"=>"whois.afilias.net",
	"ma"=>"whois.ripe.net",
	"net"=>"rs.internic.net",
	"org"=>"rs.internic.net"
	);
foreach($whois_servers as $cle=>$valeur)
{
	$domain = $domaine.$cle;
	if($domain)
	{
		$parsedom = explode(".", $domain);
		$host = $whois_servers[strtolower($parsedom[count($parsedom) - 1])];
		$fp = fsockopen($domain, 80, $errno, $errstr, 30);
		if (!$fp)
		{
			echo "$errstr ($errno)<br />\n";
		} 
		else
		{
			fwrite($fp, $domain);    
			while (!feof($fp)) 
			{
				$buf = fgets($fp, 128);    
			}    
			fclose($fp);
		}
?>
	<tr>
		<td>&nbsp;<?php echo $domaine.".".$cle;?></td>
		
<?php
		if(ereg("No match for", $buf)|| ereg("NOT FOUND", $buf))
		{
			print "<td>&nbsp;libre</td>";
		}
		else
		{
			print "<td>&nbsp;pris</td>";
		}
?>
	</tr>
<?php
	}
}
Alors que pensez vous? Il est ou l erreur?
 
je pense quelque part dans ce bout de code :
kagura a dit:
Code:
$whois_servers = array(
	"biz"=>"whois.pacificroot.com",
	"com"=>"rs.internic.net",
	"info"=>"whois.afilias.net",
	"ma"=>"whois.ripe.net",
	"net"=>"rs.internic.net",
	"org"=>"rs.internic.net"
	);
foreach($whois_servers as $cle=>$valeur)
{
	$domain = $domaine.$cle;
	if($domain)
	{
		$parsedom = explode(".", $domain);
		$host = $whois_servers[strtolower($parsedom[count($parsedom) - 1])];
		$fp = fsockopen($domain, 80, $errno, $errstr, 30);
		if (!$fp)
		{
			echo "$errstr ($errno)<br />\n";
		} 
		else
		{
			fwrite($fp, $domain);    
			while (!feof($fp)) 
			{
				$buf = fgets($fp, 128);    
			}    
			fclose($fp);
		}
?>
	<tr>
		<td>&nbsp;<?php echo $domaine.".".$cle;?></td>
		
<?php
		if(ereg("No match for", $buf)|| ereg("NOT FOUND", $buf))
		{
			print "<td>&nbsp;libre</td>";
		}
		else
		{
			print "<td>&nbsp;pris</td>";
		}
?>
	</tr>
<?php
	}
}
 
kagura a dit:
Mais c est ça le probleme. Y a pas de message d'erreur :roll: il ne me donne pas ce que je veux
ben s'il n'y a pas de message d'erreur c'est que ça fonctionne...
il faut permettre au serveur apache/php d'afficher les erreurs.
 
Jsuis pas un pro mais moi je regarderai peut-etre le
$domain = $domaine.$cle;

fait un echo $domain;
juste apres voir s il donne bien la bonne attribut a $domain .
 
En plus simple ...
sur fedora il y a jwhois d'installer du coup :

Code:
<?php
$domain = null;

if(isset($_POST['domain']))
        $domain = $_POST['domain'];


if(!eregi('^[-[:alnum:]]+\.[a-zA-Z]{2,4}$', $domain))
{
        if($domain!=null)
                $page->warning('Erreur : la syntaxe de votre nom de domaine semble incorrecte !');
        $domain=null;
}

if($domain!=null)
{
        echo '<p>'.nl2br(shell_exec('whois '.$domain)).'</p>';
}
?>
 

➡️ Offre MyRankingMetrics ⬅️

pré-audit SEO gratuit avec RM Tech (+ avis d'expert)
coaching offert aux clients (avec Olivier Duffez ou Fabien Faceries)

Voir les détails ici

coaching SEO
Discussions similaires
Haut