Bu dökümanda sizlere ; hosting ve domain satan firmalarda kullanılan whois sorgulama servislerine benzer bir uygulamayı php ile nasıl yapabileceğinizi anlatmaya çalışacağım. Her zaman ki gibi elimden geldiği kadar ve en basit haliyle anlatacam geliştirmek ve değiştirmek sizin elinizde. Fazla geyiğe girmeden hemen uygulamamıza başlıyalım.
Code:
Şimdi gereli uyarıları yaptıktan sonra uygulamamıza başlıyabiliriz.
Ben bu uygulama için php nin exec() ve ücretsiz dağıtılan fwhois programını kullandım. Siz benzer başka uygulamalar kullanabilirsiniz. Öncelikle aşağıdaki kodları kaydedin. Ben dosyayı dsorgu.php adıyla kaydedicem. Bundan sonra dosya adını bu şekilde yazıcam.
PHP Kodu:
Şimdi bu kodları satır satır inceleyelim ve anlamaya çalışalım. Ben anladım zaten önemli olan sizin anlamanız.
$a = "fwhois ". $dname ."@whois.networksolutions.com";
bu satırda bir $a değişkeni tanımladık. $a değişkeninin değeri olarakta *nix sistemlerde ücretsiz olarak dağıtılan fwhois programı ( whois vs.. gibi programlar da olabilir. Yada windows ortamında domainin olup olmadığını kontrol etmek için nslookup ı kullanabilirsiniz ) $dname değişkeni ve son olarak bunlara @whois.networksolutions.com ekini ekledik.
Php ye yeni başlıyanların ilk öğrendiği gibi php de . işareti sağdaki ve soldaki değerleri birbirine bağlamaya yarıyor. Örnek vermek gerekirse mesala $dname değişkeninin değeri zeb.biz olsaydı $a değişkeninin değeri
$a = "fwhois www.zeb.biz adresinde " Php Dili" bölümünde anlatmıştım.
foreach($b as $c) { // foreach(); fonksiyon bir değişkenin değeri bitene kadar içeriğini satır satır yineleyen bir döngü fonksiyon olarak tanımlanabilir. Yani eğer değişkenin içinde 10 satırlık bilgi varsa bu 10 satırı ekrana bastırmak için print yada echo komutunu kullanırsak bu 10 satır bitene kadar echo yada print komutu yinelenecektir.
foreach(); döngü fonksiyonu içindeki $b as $c kısm $b nin değerinden ( yani exec komutunda $a değişkeninden dönen değeri ) çıkan değeri $c değişkenine ata anlamına geliyor. son olarak { bu parantez ilede foreach fonksiyonunun etki alanını başlatıyoruz.
print ("$c<br>"); // bu satır ile $c değişkeninin her satırdaki değerini ekrana bastırıyoruz. Yani $b değişkeninden ( $a değişkeninin değerine eşit ) çıkan sonucu ekrana yazdırıyoruz. $c den sonraki <br> html kodu ile bir alt satıra geçiyoruz.
} son olarak bu satır ilede foreach döngüsünün etki alanını bitiriyoruz.
Sorgulama uygulamamızın çalışması için browser penceresinde.
[url]https://tik.lat/PFVse[/url]
yazmamız yeterli olur.
Eğer bu iş için bir form yapmayı düşünüyorsanız. Aşağıda sizin için bir örnek yazdım.
Code:
Notlar : Sonuç olarak fwhois yerine serverınızda olabilecek bir çok programı kullanabilirsiniz. Windows sistemlerde benzer uygulamaları internet üzerinden download edebilirsiniz. Fakat bu uygulamaların dos ortamında olması gerekmektedir.
Code:
Not : Bu sorgulama uygulamasında Php nin exec(); fonksiyonu kullanıldığı için serverınızda apache nin httpd.conf dosyanızda " php_admin_flag safe_mode on " su satırın aktif olmamasi gerekebilir. Zira bir iki serverda denedim. Bazılarında bu satır etkilemezken * bazılarında uygulamayı güvenlik nedeni ile çalıştırmadığını gördüm. Ayrıca bu sorgulama servisinin çalışması için whois * fwhois gibi yada windows ortamında bunlara benzer uygulamanın serverınızda kurulu olması gerekmektedir.
Şimdi gereli uyarıları yaptıktan sonra uygulamamıza başlıyabiliriz.
Ben bu uygulama için php nin exec() ve ücretsiz dağıtılan fwhois programını kullandım. Siz benzer başka uygulamalar kullanabilirsiniz. Öncelikle aşağıdaki kodları kaydedin. Ben dosyayı dsorgu.php adıyla kaydedicem. Bundan sonra dosya adını bu şekilde yazıcam.
PHP Kodu:
<?
$a = "fwhois ". $dname ."@whois.networksolutions.com";
exec($a* $b);
foreach($b as $c) {
print ("$c<br>");
}
?>
$a = "fwhois ". $dname ."@whois.networksolutions.com";
exec($a* $b);
foreach($b as $c) {
print ("$c<br>");
}
?>
Şimdi bu kodları satır satır inceleyelim ve anlamaya çalışalım. Ben anladım zaten önemli olan sizin anlamanız.
$a = "fwhois ". $dname ."@whois.networksolutions.com";
bu satırda bir $a değişkeni tanımladık. $a değişkeninin değeri olarakta *nix sistemlerde ücretsiz olarak dağıtılan fwhois programı ( whois vs.. gibi programlar da olabilir. Yada windows ortamında domainin olup olmadığını kontrol etmek için nslookup ı kullanabilirsiniz ) $dname değişkeni ve son olarak bunlara @whois.networksolutions.com ekini ekledik.
Php ye yeni başlıyanların ilk öğrendiği gibi php de . işareti sağdaki ve soldaki değerleri birbirine bağlamaya yarıyor. Örnek vermek gerekirse mesala $dname değişkeninin değeri zeb.biz olsaydı $a değişkeninin değeri
$a = "fwhois www.zeb.biz adresinde " Php Dili" bölümünde anlatmıştım.
foreach($b as $c) { // foreach(); fonksiyon bir değişkenin değeri bitene kadar içeriğini satır satır yineleyen bir döngü fonksiyon olarak tanımlanabilir. Yani eğer değişkenin içinde 10 satırlık bilgi varsa bu 10 satırı ekrana bastırmak için print yada echo komutunu kullanırsak bu 10 satır bitene kadar echo yada print komutu yinelenecektir.
foreach(); döngü fonksiyonu içindeki $b as $c kısm $b nin değerinden ( yani exec komutunda $a değişkeninden dönen değeri ) çıkan değeri $c değişkenine ata anlamına geliyor. son olarak { bu parantez ilede foreach fonksiyonunun etki alanını başlatıyoruz.
print ("$c<br>"); // bu satır ile $c değişkeninin her satırdaki değerini ekrana bastırıyoruz. Yani $b değişkeninden ( $a değişkeninin değerine eşit ) çıkan sonucu ekrana yazdırıyoruz. $c den sonraki <br> html kodu ile bir alt satıra geçiyoruz.
} son olarak bu satır ilede foreach döngüsünün etki alanını bitiriyoruz.
Sorgulama uygulamamızın çalışması için browser penceresinde.
[url]https://tik.lat/PFVse[/url]
yazmamız yeterli olur.
Eğer bu iş için bir form yapmayı düşünüyorsanız. Aşağıda sizin için bir örnek yazdım.
Code:
<html><head><title>Domain Sorgu</title><**** http-equiv="Content-Type" content="text/html; charset="></head><body bgcolor="#FFFFFF"><form method="get" action="dsorgu.php"><input type="text" name="dname"><input type="submit" name="buton" value="Gönder"></form></body></html>
Notlar : Sonuç olarak fwhois yerine serverınızda olabilecek bir çok programı kullanabilirsiniz. Windows sistemlerde benzer uygulamaları internet üzerinden download edebilirsiniz. Fakat bu uygulamaların dos ortamında olması gerekmektedir.