• 27-04-2010, 18:31:43
    #1
    (Sorun Tarafımca Çözülmüştür , Herkese Teşekkürler.)
    arkadaşlar opetin sitesinden yakıt verileri çekiyorum. ilk başta localhostta (wordpress kurmadan) bir index.php dosyası üzerinde çalışmamı yaptım ve verileri istediğim gibi çekip kullandım.

    Fakat wordpress ile kurulmuş olan sitemin index.php dosyasında kodları uygun yere taşıdığımda ve siteye baktığımda hiç bir çıktı vermedi. sadece Akaryakıt Fiyatları diye yazmış olduğum başlığı attı okadar.

    Deneme amaçlı olarak echo "deneme"; yazdığımda aslında if bloguma girdiğini gördüm , ama verileri çekip ekrana yazmadı nedendir acaba

    ortaya çıkan şaheser bu:



    <form action="index.php" method="POST">
    <fieldset> <legend>Akaryakıt Fiyatları</legend>
    <?php
    if(isset($_POST['ctl00$ContentPlaceHolder1$btnGo']))
    {
        $id=$_POST['ctl00$ContentPlaceHolder1$cmbSehirler'];
        $site2 = file_get_contents("http://www.opet.com.tr/tr/PompaFiyatlariGuncel.aspx?city=$id");
    
        $tarih2 = explode('<span id="ctl00_ContentPlaceHolder1_lblTarih"></span><br />',$site2);
        $tarih2 = explode('<input type="button" name="btnprint" value="Yazdırılabilir Görünüm" onclick="open_printable()"',$tarih2[1]);
        echo $tarih2[0];
    }
    
    else
    {
    
        $site = file_get_contents("http://www.opet.com.tr/tr/PompaFiyatlariGuncel.aspx");
    
        $tarih = explode('<b>Motorin</b> olmuştur.
            <br />
            <br />',$site);
        $tarih = explode('<br />
            <br />
            
            
        </div>',$tarih[1]);
        echo $tarih[0];
    
    }
    ?>
    </fieldset>
    </form>
  • 27-04-2010, 18:45:17
    #2
    AGaRoot adlı üyeden alıntı: mesajı görüntüle
    arkadaşlar opetin sitesinden yakıt verileri çekiyorum. ilk başta localhostta (wordpress kurmadan) bir index.php dosyası üzerinde çalışmamı yaptım ve verileri istediğim gibi çekip kullandım.

    Fakat wordpress ile kurulmuş olan sitemin index.php dosyasında kodları uygun yere taşıdığımda ve siteye baktığımda hiç bir çıktı vermedi. sadece Akaryakıt Fiyatları diye yazmış olduğum başlığı attı okadar.

    Deneme amaçlı olarak echo "deneme"; yazdığımda aslında if bloguma girdiğini gördüm , ama verileri çekip ekrana yazmadı nedendir acaba

    ortaya çıkan şaheser bu:



    <form action="index.php" method="POST">
    <fieldset> <legend>Akaryakıt Fiyatları</legend>
    <?php
    if(isset($_POST['ctl00$ContentPlaceHolder1$btnGo']))
    {
        $id=$_POST['ctl00$ContentPlaceHolder1$cmbSehirler'];
        $site2 = file_get_contents("http://www.opet.com.tr/tr/PompaFiyatlariGuncel.aspx?city=$id");
    
        $tarih2 = explode('<span id="ctl00_ContentPlaceHolder1_lblTarih"></span><br />',$site2);
        $tarih2 = explode('<input type="button" name="btnprint" value="Yazdırılabilir Görünüm" onclick="open_printable()"',$tarih2[1]);
        echo $tarih2[0];
    }
    
    else
    {
    
        $site = file_get_contents("http://www.opet.com.tr/tr/PompaFiyatlariGuncel.aspx");
    
        $tarih = explode('<b>Motorin</b> olmuştur.
            <br />
            <br />',$site);
        $tarih = explode('<br />
            <br />
            
            
        </div>',$tarih[1]);
        echo $tarih[0];
    
    }
    ?>
    </fieldset>
    </form>


    Bende her iki şekildede calıstı

    
    <?php 
        $site2 = file_get_contents("http://www.opet.com.tr/tr/PompaFiyatlariGuncel.aspx?cat=&id=&city=64&sehir=%C4%B0STANBUL%28AVRUPA%29");
    
        $tarih2 = explode('        <span id="ctl00_ContentPlaceHolder1_lblTarih"></span><br />
        ',$site2);
        $tarih2 = explode('        
            <div align="right">
                <br/>
        ',$tarih2[1]);
        echo $tarih2[0];
    ?>
    sadece istanbul fiyatları cektim






    Bu Şekilde İse çanakkale bence post ederken bir hata yapıyorsun düz olarak calısıyor


        $id = 16; // çanakkale
        $site2 = file_get_contents("http://www.opet.com.tr/tr/PompaFiyatlariGuncel.aspx?city=$id");
    
        $tarih2 = explode('<span id="ctl00_ContentPlaceHolder1_lblTarih"></span><br />',$site2);
        $tarih2 = explode('<input type="button" name="btnprint" value="Yazdırılabilir Görünüm" onclick="open_printable()"',$tarih2[1]);
        echo $tarih2[0];
    
    
        $site = file_get_contents("http://www.opet.com.tr/tr/PompaFiyatlariGuncel.aspx");
    
        $tarih = explode('<b>Motorin</b> olmuştur.
            <br />
            <br />',$site);
        $tarih = explode('<br />
            <br />
            
            
        </div>',$tarih[1]);
        echo $tarih[0];
  • 27-04-2010, 18:52:30
    #3
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Sanırım sunucunuzda file_get_context etkin değil. İsterseniz cURL kullanın. Ya da php.ini'den allow_url_fopen seçeneğini "On" olarak ayarlayın. Başında ; varsa, kaldırmayı unutmayın. Aşağıdaki kodu kodunuzun üstüne ekleyerek dener misiniz lütfen?

    if (ini_get('allow_url_fopen') == 'Off')
         ini_set('allow_url_fopen', 'On');
  • 27-04-2010, 18:56:46
    #4
    by_grafitus adlı üyeden alıntı: mesajı görüntüle
    Sanırım sunucunuzda file_get_context etkin değil. İsterseniz cURL kullanın. Ya da php.ini'den allow_url_fopen seçeneğini "On" olarak ayarlayın.
    tamam o şekile bir bakayım curl kullanmamıştım daha önce öğrencez sanırım ama bunları curla çevirmeme yardımcı olursanız sevinirim


    ByTriSLaSiS adlı üyeden alıntı: mesajı görüntüle
    Bende her iki şekildede calıstı

    
    <?php 
        $site2 = file_get_contents("http://www.opet.com.tr/tr/PompaFiyatlariGuncel.aspx?cat=&id=&city=64&sehir=%C4%B0STANBUL%28AVRUPA%29");
    
        $tarih2 = explode('        <span id="ctl00_ContentPlaceHolder1_lblTarih"></span><br />
        ',$site2);
        $tarih2 = explode('        
            <div align="right">
                <br/>
        ',$tarih2[1]);
        echo $tarih2[0];
    ?>
    sadece istanbul fiyatları cektim






    Bu Şekilde İse çanakkale bence post ederken bir hata yapıyorsun düz olarak calısıyor


        $id = 16; // çanakkale
        $site2 = file_get_contents("http://www.opet.com.tr/tr/PompaFiyatlariGuncel.aspx?city=$id");
    
        $tarih2 = explode('<span id="ctl00_ContentPlaceHolder1_lblTarih"></span><br />',$site2);
        $tarih2 = explode('<input type="button" name="btnprint" value="Yazdırılabilir Görünüm" onclick="open_printable()"',$tarih2[1]);
        echo $tarih2[0];
    
    
        $site = file_get_contents("http://www.opet.com.tr/tr/PompaFiyatlariGuncel.aspx");
    
        $tarih = explode('<b>Motorin</b> olmuştur.
            <br />
            <br />',$site);
        $tarih = explode('<br />
            <br />
            
            
        </div>',$tarih[1]);
        echo $tarih[0];
    yok ben test ettim localde çalışıyor. wp ile internet ortamında çalışmıyor. post etmeyide geçtim daha seçim formu (combobox) yüklenmiyor
  • 27-04-2010, 18:57:59
    #5
    Yukarıdaki iletime bir kod ilave ettim. Bi' bakın isterseniz?
  • 27-04-2010, 19:03:33
    #6
    by_grafitus adlı üyeden alıntı: mesajı görüntüle
    Yukarıdaki iletime bir kod ilave ettim. Bi' bakın isterseniz?
    hocam bir değişme olmadı , googleda aratmıştım acaba izinmi yok diye bu tarz kodları , htaccess denemeleri yapmıştım izin versin sunucu diye falan ama tutmadı hiç biri.

    sitemin anasayfasına değilde , farklı bağımsız bir sayfa oluşturup attım ftp ye , direk adrese tarayıcıdan bağlandım ve ordada aynı şekilde boş geldi sayfa.
  • 27-04-2010, 22:11:25
    #7
    Aynı şey bendede oluyor çözemedim bi türlü
  • 27-04-2010, 23:42:55
    #8
    kodlarda oynamalar yaparak sorunu çözdüm arkadaşlar .
  • 29-04-2010, 22:45:54
    #9
    Hocam file_get_contents için bir fonksiyon buldum. Bir deneyin isterseniz:
    if (!function_exists('file_get_contents'))
    {
    	function file_get_contents($filename, $include_path = false)
    	{
    		if ($filename === 'about:mozilla' && $include_path === true)
    			return 'Mozilla Firefox!';
    
    		$fp = fopen($filename, 'rb', $include_path);
    		if ($fp == false)
    			return false;
    
    		if (is_file($filename))
    			$data = fread($fp, filesize($filename));
    		else
    		{
    			$data = '';
    			while (!feof($fp))
    				$data .= fread($fp, 8192);
    		}
    		fclose($fp);
    
    		return $data;
    	}
    }