• 13-10-2010, 19:33:10
    #1
    Üyeliği durduruldu
    merhaba, aşağıdaki fonksiyonu localhostta sorunsuz kullanabilmeme rağmen , hosta attığımda değerlerin oluşturulmaması gibi bi problem yaşıyorum. Yani hiç bir hata vermemesine rağmen veride çekilmiyor. Sorun nedir sizce arkadaşlar?

    not : makinada fopen kullanımı açık

    hava.fonk.php
    <?
    Class erguner 
    {
     function dayadd($days,$date=null , $format="d/m/Y"){
      // add days to a date
      return date($format,strtotime($days." days",strtotime( $date ? $date : date($format) )));
     }
     private function attr($s,$attrname) {
      //retrn html attribute
      preg_match_all('#\s*('.$attrname.')\s*=\s*["|\']([^"\']*)["|\']\s*#i', $s, $x); 
      if (count($x)>=3) return $x[2][0];
      return "";
     }
    public function hava($q,$thedate="") {
    
      //(teşekkürler google)
      if (!$thedate) $date = date("Y-m-d"); //bugün
       else $date = $thedate;
      if ($date>$this->dayadd(3,date("Y-m-d"),"Y-m-d"))return "";
      // verileri alalım
      $web_page = file_get_contents( "http://www.google.com.tr/search?q=weather+" . urlencode($q) );
      //parçalayalım
      preg_match_all('#<div class=e>(.*)</table>#Us', $web_page, $m);
      if (count($m)>0) {
       
       $p = array();
       preg_match_all('#<img([^>]*)?>#Us', $m[0][0], $img);
       for ($i=0;$i<count($img[0]);$i++) {
        $tag = str_replace("src=\"/","src=\"http://www.google.it/",$img[0][$i]);
        $p[$i]["date"]=$this->dayadd($i,date("Y-m-d"),"Y-m-d");
        $p[$i]["title"] = $this->attr($tag,"title");
        $p[$i]["img"] = $this->attr($tag,"src");
       }
       preg_match_all('#<nobr>(.*)</nobr>#Uis', $m[0][0], $nobr);
       for ($i=0;$i<count($nobr[1]);$i++) {
        $temp= explode("|",$nobr[1][$i]);
        $p[$i]["min"] = trim($temp[1]) ;
        $p[$i]["max"] = trim($temp[0]) ;
       }
       return (!$thedate?$p:$p[$date]);
      }
      return array();
     }
     }
    ?>

    Kullanım (index.php)

       <?
    include "hava.fonk.php";
    $c = "Bursa"; //Şehir
    $erguner = new erguner;
    $go = $erguner->hava($c); echo "<h1>".$c." hava durumu</h1>".$go[0][date]."<br>".$go[0][title]."<br><img src='".$go[0][img]."'><br>".$go[0][min]."<br>".$go[0][max];
    ?>
  • 13-10-2010, 19:46:52
    #2
    ilk satırlarda <? yerine <?php yazmayı deneyin. hostun short tags özelliği açık değilse sorun yaratır
  • 13-10-2010, 22:11:00
    #3
    Üyeliği durduruldu
    Deimosx adlı üyeden alıntı: mesajı görüntüle
    ilk satırlarda <? yerine <?php yazmayı deneyin. hostun short tags özelliği açık değilse sorun yaratır

    malesef sonuç aynı teşekkür ederim cevap için.
    whm kullanıyorum tüm ayarları kontrol ettim bi sorun gözükmüyor. Kodu deneyip çözümü bulabilen bir arkadaş çıkarsa çok rahatlatacak beni.
  • 13-10-2010, 22:45:35
    #4
    <?php'yi bulun altına ekleyin error_reporting(E_ALL); bakalım çıktı verecekmi
  • 13-10-2010, 23:20:15
    #5
    Üyeliği durduruldu
    evet verdiği hata ;

    Alıntı
    Notice: Undefined offset: 0 in /home/yakinca/public_html/inc/havafonk.php on line 27

    Notice: Undefined offset: 0 in /home/yakinca/public_html/inc/havafonk.php on line 34

    Notice: Use of undefined constant date - assumed 'date' in /home/yakinca/public_html/inc/hava.php on line 6

    Notice: Undefined offset: 0 in /home/yakinca/public_html/inc/hava.php on line 6

    Notice: Use of undefined constant title - assumed 'title' in /home/yakinca/public_html/inc/hava.php on line 6

    Notice: Undefined offset: 0 in /home/yakinca/public_html/inc/hava.php on line 6

    Notice: Use of undefined constant img - assumed 'img' in /home/yakinca/public_html/inc/hava.php on line 6

    Notice: Undefined offset: 0 in /home/yakinca/public_html/inc/hava.php on line 6

    Notice: Use of undefined constant min - assumed 'min' in /home/yakinca/public_html/inc/hava.php on line 6

    Notice: Undefined offset: 0 in /home/yakinca/public_html/inc/hava.php on line 6

    Notice: Use of undefined constant max - assumed 'max' in /home/yakinca/public_html/inc/hava.php on line 6

    Notice: Undefined offset: 0 in /home/yakinca/public_html/inc/hava.php on line 6
  • 14-10-2010, 01:06:02
    #6
    Üyeliği durduruldu
    Kalabali adlı üyeden alıntı: mesajı görüntüle
    evet verdiği hata ;
    Bu hata gelmemişmi kimsenin başına benden başka:P
  • 24-10-2010, 15:55:20
    #7
    fonksiyonların bulunduğu kodları hava_function.php diye kaydettim hava.php dosyasınada aynı şekilde include edip ftp ye yolladım sorunsuz çalıştı bende... sorun dosya ismi yada hosting ayarlarından kaynaklanıyor olabilir