Sponsor-Board.de

Normale Version: [PHP] dns_get_record - Problem
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Guten Morgen Community,

seit heute ist mir aufgefallen das mein dns_get_record Script nicht mehr funktioniert.
Denn man soll eigentlich bei mir Domainnamen überprüfen können, aber das funktioniert jetzt plötzlich nicht mehr - zumindest ist mir dies vor einigen Minuten aufgefallen.

Eigentlich wenn man z. B. dns_get_record("hostblock.eu"); eingibt, müsste "FREI" kommen, aber es wird nur "BELEGT" gesagt.
Wenn ich das ganze mit print_r(); ausgeben lasse, erhalte ich folgendes Ergebnis:

Code:
Array ( [0] => Array ( [host] => hostblock.eu.hostblock.de [class] => IN [ttl] => 84799 [type] => A [ip] => 62.75.209.64 ) )

Wie man sieht, steht im [host] nicht nur das eigentliche "hostblock.eu" sondern es wird noch die aktuelle Domain angehängt.

Wenn man aber z. B. eine belegte Domain (hostblock.de) testet, wird folgendes als Ergebnis gezeigt:

Code:
Array ( [0] => Array ( [host] => hostblock.de [class] => IN [ttl] => 81452 [type] => NS [target] => ns10.nameserverservice.de ) ......


Jetzt Frage ich mich wieso das ganze plötzlich so ist?
Kann mir jemand dabei eventuell weiter Helfen?

LG, Justin

Poste doch bitte das ganze Script ...
Dann kann man sich das mal anschauen.

Gruß

PHP-Code:
<?
    // DEBUG
    $domain = "hostblock.eu";
    print_r(dns_get_record($domain));


    // PRÜFEN OB FREI
    $result = dns_get_record($domain);
    if(!empty($result)){ echo "BELEGT"; }else{ echo "FREI"; }
?>


Ist natürlich nicht mein komplettes Domain Script, aber das hier ist zumindest der Testcode.
Viel ist es nun mal nicht. Aber diese Domain ist Frei und das Ergebnis sollte dann auch "FREI" sein ..

LG, Justin

ohne den Inhalt von dns_get_record() kann ich dir nicht helfen Biggrin
Das wäre nur wildes raten ...

Code am besten per pastebin oder gist

Aaron schrieb:
ohne den Inhalt von dns_get_record() kann ich dir nicht helfen Biggrin
Das wäre nur wildes raten ...

Code am besten per pastebin oder gist


uhm, wieso ohne Inhalt?
Der Inhalt befindet sich doch in der Variable "$domain", und $domain befindet sich in diesem Code in Zeile 3 Wink

Denn mehr Inhalt sende ich auch nicht ab, als eine Domain.TLD

LG, Justin

Liege ich damit richtig dass das ganze eine überprüfung von domains werden soll um festzustellen ob diese registriert ist oder nicht? Wenn ja ist eine dns abfrage der falsche weg, dafür macht man whois abfragen...
Dann sag mir wie ich es dann mit PHP mache?
Denn bevor dieses uminöse Problem auftrat, hatte er alles richtig angezeigt, ob die bestimmte Domain frei ist oder nicht ..

Auf der Webseite soll man dann z. B. nur "meine-domain" eingeben, ohne der TLD. Dann schaut mein Script nach, welche "meine-domain" der 30 verschiedenen TLDs frei ist.
Mit einer normalen Whoisabfrage kann man sehr oft nur eine einzige Domain checken.

LG, Justin
Whois ist hierfür der beste weg, denn auch Domains die registriert sind können unter umständen keine dns einträge haben (ja habe ich schon mehrmals gesehen), für whois abfragen in php gibt es freie Bibliotheken z.b. Auf github
Aber ich möchte z. Z. den DNS Record von PHP anwenden. Denn es muss ja irgendein Problem vorliegen das ich nicht kenne, und das möchte ich erst einmal beheben.
Wenn das erst einmal ist, dann kann ich noch immer diese Whois Bib. verwenden irgendwie Wink

LG, Justin

Aaron schrieb:
ohne den Inhalt von dns_get_record() kann ich dir nicht helfen Biggrin
Das wäre nur wildes raten ...

[Link: Registrierung erforderlich]

JND_3004 schrieb:
Wie man sieht, steht im [host] nicht nur das eigentliche "hostblock.eu" sondern es wird noch die aktuelle Domain angehängt.

Das ist ein gewolltes Verhalten dieser Funktion, wenn der übergebene Hostname nicht existiert. Ich kann mich nur meinen Vorpostern anschließen und Dir raten, das Verfahren zu wechseln, mit einer Record-Abfrage wirst Du nie ein zuverlässiges Ergebnis bezüglich des Registrierungsstatus einer Domain erhalten.

EDIT: Auf meinem Server funktioniert es übrigens, kann es sein dass bei Dir der Hostname nicht korrekt festgelegt ist? Ansonsten kannst Du versuchen, an die Domain einen Punkt anzuhängen (ungetestet).

Seiten: 1 2
Referenz-URLs