• 24-04-2014, 21:41:37
    #1
    Kimlik doğrulama veya yönetimden onay bekliyor.
    merhaba arkadaşlar, birşey yazmaya çalışıyorumda şöyle bir şey yapmak istiyorum

    domain ns lerini php nin dns_get_record fonksiyonuyla alıyorum foreach ile döngüye sokup if kontrolü yapıcam dns ler "ns1.siteismi.com ve ns2.siteismi.com" sa şunu yap dicemo ama yaptığım mantık bana %100 doğru bir cevap vermiyor. dns leri bir döngüye sokup if kontrlü nasıl yaptırtabilirim?

    çıkan sonuç ns1.siteismi.comns2.siteismi.com şeklinde bitişik çıktığı için ve bazen ns2 önde bazen sonda çıktığı için sıkıntı oluyor

    kod yapım aşağıdadır. Şu kardeşinizin baş ağrısını dindirin ..

    $recs = dns_get_record("kirkagacradyo.com",  DNS_NS );
    
    foreach ($recs as $type => $value){
    $domain_sonuc=$value[target];
    }
    echo $domain_sonuc;
    if ( strstr($domain_sonuc,"dns1.siteism.com") or strstr($domain_sonuc,"dns2.siteismi.com")){ 
    echo "DNS Doğru";
    }else{ 
    echo "DNS Yanlış";
    };


    --R10.NET; Flood Engellendi -->-> Yeni yazılan mesaj 21:41:37 -->-> Daha önceki mesaj 21:12:15 --

    ikisininde ns1.siteism.com ns2.siteism.com olma şartı var

    if arasına or ekleyince oluyorda and ekleyince olmuyor
  • 24-04-2014, 23:29:53
    #2
    $recs = dns_get_record("kirkagacradyo.com",  DNS_NS );
    
    foreach ($recs as $type => $value){
    $domain_sonuc[]=$value["target"];
    }
    
    if ( in_array("dns1.siteism.com",$domain_sonuc) AND in_array("dns2.siteismi.com",$domain_sonuc)){ 
    echo "DNS Doğru";
    }else{ 
    echo "DNS Yanlış";
    };
    dener misin?
  • 24-04-2014, 23:35:43
    #3
    Üyeliği durduruldu
    serhatesmer adlı üyeden alıntı: mesajı görüntüle
    merhaba arkadaşlar, birşey yazmaya çalışıyorumda şöyle bir şey yapmak istiyorum

    domain ns lerini php nin dns_get_record fonksiyonuyla alıyorum foreach ile döngüye sokup if kontrolü yapıcam dns ler "ns1.siteismi.com ve ns2.siteismi.com" sa şunu yap dicemo ama yaptığım mantık bana %100 doğru bir cevap vermiyor. dns leri bir döngüye sokup if kontrlü nasıl yaptırtabilirim?

    çıkan sonuç ns1.siteismi.comns2.siteismi.com şeklinde bitişik çıktığı için ve bazen ns2 önde bazen sonda çıktığı için sıkıntı oluyor

    kod yapım aşağıdadır. Şu kardeşinizin baş ağrısını dindirin ..

    $recs = dns_get_record("kirkagacradyo.com",  DNS_NS );
    
    foreach ($recs as $type => $value){
    $domain_sonuc=$value[target];
    }
    echo $domain_sonuc;
    if ( strstr($domain_sonuc,"dns1.siteism.com") or strstr($domain_sonuc,"dns2.siteismi.com")){ 
    echo "DNS Doğru";
    }else{ 
    echo "DNS Yanlış";
    };


    --R10.NET; Flood Engellendi -->-> Yeni yazılan mesaj 21:41:37 -->-> Daha önceki mesaj 21:12:15 --

    ikisininde ns1.siteism.com ns2.siteism.com olma şartı var

    if arasına or ekleyince oluyorda and ekleyince olmuyor
    <?php
    $nsler = array();
    
    $recs = dns_get_record("kirkagacradyo.com",  DNS_NS ); 
    for($i = 0; $i<count($recs); $i++)
    {
    	array_push($nsler,$recs[$i]['target']);
    }
    
    if(in_array("dns1.siteism.com",$nsler) && in_array("dns2.siteism.com",$nsler))
    	echo 'DNS Doğru';
    else
    	echo 'DNS Yanlış';
    ?>
    böyle bir şey de yapabilirsiniz.
  • 25-04-2014, 01:07:02
    #4
    Kimlik doğrulama veya yönetimden onay bekliyor.
    @serhatesmer; hacım bu biraz daha gelişmişi sorunu çözdün mü bilmiyorum ama işine yarayabilir.

    <?php
    
    	$prefered_nameservers = ["NS1.GOOGLE.COM", "NS2.GOOGLE.COM"];
    
    	$domain = $_GET["domain"];
    
    	$nameservers = [];
    
    	$records = dns_get_record($domain, DNS_NS);
    
    	if ( is_array($records) && count($records) > 0 )
    	{
    		foreach ( $records as $record )
    		{
    			$nameservers[] = strtoupper($record["target"]);
    		}
    	}
    
    	asort($nameservers);
    
    	$nameservers = array_values($nameservers);
    
    	if ( empty($nameservers) )
    	{
    		echo "Couldn't fetched DNS information.";
    	}
    	else
    	{
    		$_tmp_nameservers = $prefered_nameservers;
    
    		foreach ( $nameservers as $index => $nameserver )
    		{
    			if ( count($_tmp_nameservers) > 0 )
    			{
    				if ( in_array($nameserver, $prefered_nameservers) )
    				{
    					unset($_tmp_nameservers[$index]);
    				}
    			}
    		}
    
    		if ( count($_tmp_nameservers) <= 0 )
    		{
    			echo "DNS information is matched.";
    		}
    		else
    		{
    			echo "DNS information isn't matched.";
    		}
    	}
  • 25-04-2014, 10:26:09
    #5
    $prefered_nameservers = ["NS1.GOOGLE.COM", "NS2.GOOGLE.COM"];
    şu kısımda [ hatası veriyor parantezler hatalı diyor hata nerde ki ya.

    saintx adlı üyeden alıntı: mesajı görüntüle
    @serhatesmer; hacım bu biraz daha gelişmişi sorunu çözdün mü bilmiyorum ama işine yarayabilir.

    <?php
    
    	$prefered_nameservers = ["NS1.GOOGLE.COM", "NS2.GOOGLE.COM"];
    
    	$domain = $_GET["domain"];
    
    	$nameservers = [];
    
    	$records = dns_get_record($domain, DNS_NS);
    
    	if ( is_array($records) && count($records) > 0 )
    	{
    		foreach ( $records as $record )
    		{
    			$nameservers[] = strtoupper($record["target"]);
    		}
    	}
    
    	asort($nameservers);
    
    	$nameservers = array_values($nameservers);
    
    	if ( empty($nameservers) )
    	{
    		echo "Couldn't fetched DNS information.";
    	}
    	else
    	{
    		$_tmp_nameservers = $prefered_nameservers;
    
    		foreach ( $nameservers as $index => $nameserver )
    		{
    			if ( count($_tmp_nameservers) > 0 )
    			{
    				if ( in_array($nameserver, $prefered_nameservers) )
    				{
    					unset($_tmp_nameservers[$index]);
    				}
    			}
    		}
    
    		if ( count($_tmp_nameservers) <= 0 )
    		{
    			echo "DNS information is matched.";
    		}
    		else
    		{
    			echo "DNS information isn't matched.";
    		}
    	}
  • 25-04-2014, 10:28:37
    #6
    @serhatesmer; PHP sürümün düşük orası array eski haliyle de oluşturabilirsin.
  • 25-04-2014, 12:00:57
    #7
    saintx adlı üyeden alıntı: mesajı görüntüle
    @serhatesmer; PHP sürümün düşük orası array eski haliyle de oluşturabilirsin.
    olabilir la eski derken tırnaksız halimi? yada parantezsiz?

    --R10.NET; Flood Engellendi -->-> Yeni yazılan mesaj 11:54:06 -->-> Daha önceki mesaj 11:53:03 --

    $prefered_nameservers = array("NS1.GOOGLE.COM", "NS2.GOOGLE.COM");

    Doğru mu?

    --R10.NET; Flood Engellendi -->-> Yeni yazılan mesaj 11:55:45 -->-> Daha önceki mesaj 11:54:06 --

    cevap olarak dns adresleri yanlış diyor ama doğru

    $prefered_nameservers = array("ns15.444dns.com", "ns16.444dns.com");
    
        $domain = "serhatesmer.com";
     
        $nameservers = array();
    
        $records = dns_get_record($domain, DNS_NS);
    
        if ( is_array($records) && count($records) > 0 )
        {
            foreach ( $records as $record )
            {
                $nameservers[] = strtoupper($record["target"]);
            }
        }
    
        asort($nameservers);
    
        $nameservers = array_values($nameservers);
    
        if ( empty($nameservers) )
        {
            echo "Couldn't fetched DNS information.";
        }
        else
        {
            $_tmp_nameservers = $prefered_nameservers;
    
            foreach ( $nameservers as $index => $nameserver )
            {
                if ( count($_tmp_nameservers) > 0 )
                {
                    if ( in_array($nameserver, $prefered_nameservers) )
                    {
                        unset($_tmp_nameservers[$index]);
                    }
                }
            }
    
            if ( count($_tmp_nameservers) <= 0 )
            {
                echo "DNS information is matched.";
            }
            else
            {
                echo "DNS information isn't matched.";
            }
        }


    --R10.NET; Flood Engellendi -->-> Yeni yazılan mesaj 12:00:57 -->-> Daha önceki mesaj 11:55:45 --

    Arkadaşlar cevaplar için teşekkür ederim, arkadaşın verdiği kod tüm tam istediğim gibi çalışıyor

    istanbullili adlı üyeden alıntı: mesajı görüntüle
    <?php
    $nsler = array();
    
    $recs = dns_get_record("kirkagacradyo.com",  DNS_NS ); 
    for($i = 0; $i<count($recs); $i++)
    {
    	array_push($nsler,$recs[$i]['target']);
    }
    
    if(in_array("dns1.siteism.com",$nsler) && in_array("dns2.siteism.com",$nsler))
    	echo 'DNS Doğru';
    else
    	echo 'DNS Yanlış';
    ?>
    böyle bir şey de yapabilirsiniz.