php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger

PHP Einsteiger PHP Problemlösungen für Spracheinsteiger
Archive: 2004, 2004/2, 2005, 2005/2, 2006, 2007, 2008, 2009, 2010,

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 18.12.2011, 03:41  
Erfahrener Benutzer
 
Benutzerbild von Aceh
 
Registriert seit: 01.03.2011
Beiträge: 120
PHP-Kenntnisse:
Anfänger
Aceh befindet sich auf einem aufstrebenden Ast
Aceh eine Nachricht über ICQ schicken
Standard [Erledigt] gethostbyname Wo ist der Hund begraben?

Hallo!
Ich möchte einen einfachen Domain-Checker machen und ich weiß nicht, wo der Fehler ist.


Der Bereich if($checked == "www.$checklink") ist ungleich bei jeder Angabe.



$checklink = "example.de"

Bei $checked kommt z.B. www.example.de raus, wenn die Domain noch frei ist.



PHP-Code:
<?php
$checklink 
$_POST['checklink'];


$checked gethostbyname('www.$checklink');

if(
$checked == "www.$checklink")
{
echo
"
www.$checklink ist noch frei.<br><br>
"
;
}else{
echo
"
www.$checklink ist schon vergeben.<br><br>
"
;
}
?>
Aceh ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 18.12.2011, 03:54  
Erfahrener Benutzer
 
Benutzerbild von Dark Guardian
 
Registriert seit: 10.10.2009
Beiträge: 2.630
PHP-Kenntnisse:
Fortgeschritten
Dark Guardian ist jedem bekanntDark Guardian ist jedem bekanntDark Guardian ist jedem bekanntDark Guardian ist jedem bekanntDark Guardian ist jedem bekanntDark Guardian ist jedem bekannt
Standard

PHP-Code:
'www.$checklink' 
http://php.net/manual/de/language.types.string.php

Allerdings ist das sowieso Mumpiz was du da machst. gethostbyname() führt eine DNS Auflösung durch. Ob diese erfolgreich verläuft oder nicht hat rein gar nichts damit zu tun ob eine Domain bereits registriert ist oder nicht.

Edit: wieso schreibt jetzt eigentlich jeder zweite "wo ist der Hund begraben?" in den Threadtitel? Ist das jetzt der neue Ersatz für das Wort "Problem"?
__________________
"Alles im Universum funktioniert, wenn du nur weißt wie du es anwenden musst".
Dark Guardian ist offline   Mit Zitat antworten
Alt 18.12.2011, 06:06  
meikel
Gast
 
Beiträge: n/a
Standard

Zitat:
Zitat von Aceh Beitrag anzeigen
Ich möchte einen einfachen Domain-Checker machen und ich weiß nicht, wo der Fehler ist.
...
$checked = gethostbyname('www.$checklink');
Die Verfügbarkeit einer Domain ermittelt man mit einer whois Abfrage auf Port 43 an den für die jeweilige TLD zuständigen NIC.

Was Du da treibst, erschließt sich mir absolut nicht. Warum willst Du testen, ob es für die Subdomain www der Domain xyz.tld eine IP gibt?
1. isses nicht sicher, daß die Subdomain www existiert
2. ist die Annahme falsch, eine Domain ohne DNS Auflösung wäre frei.
  Mit Zitat antworten
Alt 18.12.2011, 10:25  
Erfahrener Benutzer
 
Benutzerbild von Arne Drews
 
Registriert seit: 22.04.2009
Beiträge: 3.486
PHP-Kenntnisse:
Anfänger
Arne Drews wird schon bald berühmt werdenArne Drews wird schon bald berühmt werden
Arne Drews eine Nachricht über Skype™ schicken
Standard

PHPwhois

Zitat:
Zitat von Dark Guardian
Edit: wieso schreibt jetzt eigentlich jeder zweite "wo ist der Hund begraben?" in den Threadtitel? Ist das jetzt der neue Ersatz für das Wort "Problem"?
Genau das habe ich mich eben auch gefragt...
__________________
Phantasie ist wichtiger als Wissen, denn Wissen ist begrenzt.
Probleme kann man niemals mit derselben Denkweise lösen, durch die sie entstanden sind.
Albert Einstein
Arne Drews ist offline   Mit Zitat antworten
Alt 18.12.2011, 12:22  
meikel
Gast
 
Beiträge: n/a
Standard

Zitat:
Zitat von Arne Drews Beitrag anzeigen
Muß überarbeitet werden, da das Script nur bis PHP 5.3.2 lauffähig ist:
ua. der constructor
  Mit Zitat antworten
Alt 18.12.2011, 12:28  
Erfahrener Benutzer
 
Benutzerbild von fireweasel
 
Registriert seit: 20.03.2010
Beiträge: 474
PHP-Kenntnisse:
Fortgeschritten
fireweasel ist ein Lichtblickfireweasel ist ein Lichtblickfireweasel ist ein Lichtblickfireweasel ist ein Lichtblickfireweasel ist ein Lichtblick
fireweasel eine Nachricht über ICQ schicken fireweasel eine Nachricht über AIM schicken fireweasel eine Nachricht über Yahoo! schicken fireweasel eine Nachricht über Skype™ schicken
Standard

Zitat:
Zitat von Aceh Beitrag anzeigen
Hallo!
Ich möchte einen einfachen Domain-Checker machen und ich weiß nicht, wo der Fehler ist.
Auf die wichtigsten Denkfehler (String-Interpolation, Domain-Exists-Check-vs-Domain-Auflösung) bist du schon hingewiesen worden. Schauen wir uns jetzt mal die Verwendung von gethostbyname() genauer an:

Zitat:
PHP-Code:
<?php
$checklink 
$_POST['checklink'];


$checked gethostbyname('www.$checklink');

if(
$checked == "www.$checklink")
{
echo
"
www.$checklink ist noch frei.<br><br>
"
;
}else{
echo
"
www.$checklink ist schon vergeben.<br><br>
"
;
}
?>
Im Erfolgsfall liefert gethostbyname() eine IP(v4)-Adresse zurück. Ob ein String eine gültige IP(v4)-Adresse darstellt, kann man mit ip2long() prüfen, also etwa so:

PHP-Code:
if (is_int(ip2long($ip gethostbyname($domain)))) {
    
// es gibt eine IP zur untersuchten Domain
    
printf('Die IP zur Domain %s lautet %s'$domain$ip);
}
else {
    
// es gibt keine
    
echo 'Ooooooooooch!';


Geändert von fireweasel (19.12.2011 um 20:11 Uhr). Grund: typos
fireweasel ist offline   Mit Zitat antworten
Alt 18.12.2011, 12:30  
Erfahrener Benutzer
 
Benutzerbild von Arne Drews
 
Registriert seit: 22.04.2009
Beiträge: 3.486
PHP-Kenntnisse:
Anfänger
Arne Drews wird schon bald berühmt werdenArne Drews wird schon bald berühmt werden
Arne Drews eine Nachricht über Skype™ schicken
Standard

@meikel: Jo mei... dann gibts ne andere Klasse, war halt die erste, die bei Google kam.
Muß er halt mal selbst googlen...
__________________
Phantasie ist wichtiger als Wissen, denn Wissen ist begrenzt.
Probleme kann man niemals mit derselben Denkweise lösen, durch die sie entstanden sind.
Albert Einstein
Arne Drews ist offline   Mit Zitat antworten
Alt 18.12.2011, 12:45  
meikel
Gast
 
Beiträge: n/a
Standard

Zitat:
Zitat von Arne Drews Beitrag anzeigen
@meikel: Jo mei...
War nur ein Hinweis.
  Mit Zitat antworten
Alt 19.12.2011, 01:15  
Erfahrener Benutzer
 
Benutzerbild von Aceh
 
Registriert seit: 01.03.2011
Beiträge: 120
PHP-Kenntnisse:
Anfänger
Aceh befindet sich auf einem aufstrebenden Ast
Aceh eine Nachricht über ICQ schicken
Standard

Danke für die Antworten, bin noch am rumversuchen..
Aceh ist offline   Mit Zitat antworten
Alt 19.12.2011, 10:48  
Erfahrener Benutzer
 
Benutzerbild von lstegelitz
 
Registriert seit: 07.09.2009
Beiträge: 4.005
PHP-Kenntnisse:
Fortgeschritten
lstegelitz ist einfach richtig nettlstegelitz ist einfach richtig nettlstegelitz ist einfach richtig nettlstegelitz ist einfach richtig nett
Standard



PHP-Code:
echo 'www.$checklink'
PHP-Code:
echo "www.$checklink"
__________________
Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.
lstegelitz ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Wo ist der Hund begraben? Solu PHP Einsteiger 6 18.12.2011 12:59
Captcha Wo ist der Hund begraben ? myoddo PHP Einsteiger 17 18.12.2011 09:36
Zeitlimit bei gethostbyname DaniGro Server, Hosting und Workstations 2 10.08.2006 21:05
Cookie-Problem: Wo liegt der Hund begraben? SvenLittkowski PHP Tipps 2006 6 03.04.2006 22:39
Da wird der Hund in der Pfanne verrückt… php_frage Off-Topic Diskussionen 5 30.01.2006 23:22
gethostbyname() funktioniert nicht mehr PHP-Fortgeschrittene 4 22.08.2005 20:54

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php 5.3 gethostbyname, php if gethostbyname, php gethostbyname liefert domain zurück, gethostbyname php falsche auflösung

Alle Zeitangaben in WEZ +2. Es ist jetzt 19:30 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum