• 22-07-2009, 15:39:37
    #1
    Üyeliği durduruldu
    Merhaba arkadaşlar,
    Yapmaya çalıştığım proje çok geniş kapsamlı olmadığından MySql kullanmak istemedim.Bu nedenle xml ile yapmaya karar verdim.

    Takıldığım nokta dosyanın içindeki verilerin ilk beşini çekme kısmı.

    Bu konuda yardımcı olacak arkadaşlara şimdiden teşekkürler.
  • 22-07-2009, 15:47:43
    #2
    xml yapin nedir?
  • 22-07-2009, 16:08:25
    #4
    Üyeliği durduruldu
    Xml yapım bu şekilde :

    <?xml version="1.0" encoding="UTF-8"?>
    <Matches>
        <Match>
            <ID>1</ID>
            <Teams>Team 1 - Team 2</Teams>
            <Score>4 - 4</Score>
        </Match>
    	<Match>
            <ID>2</ID>
            <Teams>Team 3 - Team 4</Teams>
            <Score>2 - 1</Score>
        </Match>
        <Match>
            <ID>3</ID>
            <Teams>Team 5 - Team 6</Teams>
            <Score>0 - 5</Score>
        </Match>
        <Match>
            <ID>4</ID>
            <Teams>Team 7 - Team 8</Teams>
            <Score>0 - 2</Score>
        </Match>
        <Match>
            <ID>5</ID>
            <Teams>Team 9 - Team 10</Teams>
            <Score>4 - 3</Score>
        </Match>
        <Match>
            <ID>6</ID>
            <Teams>Team 11 - Team 12</Teams>
            <Score>3 - 0</Score>
        </Match>
    </Matches>
  • 22-07-2009, 16:15:41
    #5
    Üyeliği durduruldu
    $baglan = file_get_contents("x.xml");
    preg_match_all("#<ID>(.*?)</ID><Teams>(.*?)</Teams><Score>(.*?)</Score>#si",$baglan,$x);
    print_r($x);
  • 22-07-2009, 16:23:25
    #6
    Üyeliği durduruldu
    neden preg_match_all fonksiyonunu kullandık?

    olayı tam kavrayamadım biraz daha açıklayıcı anlatabilir misiniz ?
  • 22-07-2009, 16:31:23
    #7
    Üyeliği durduruldu
    php yi ne kadar iyi biliyorsun ona göre anlatıcamda
  • 22-07-2009, 16:49:11
    #8
    preg_match_all ile verilen regex e uyan tüm alanları array yaptık. Artık array içinden ilk 5 ini alabilirsiniz $x[0], $x[1].. şeklinde.

    Benzer bir uygulamayı bu ay içinde yapmıştım. "xml to array" sınıfı yazıp, foreach ile döndürmüştüm. Demek istediğim işin içine sayfalama, sef url, cache, son 5 eleman da girince preg_match_all bana yetmezdi.

    Açıkçası veritabanı ile yapsam 10 satırda bitecek kodlar, xml to array ile 150 satırda bitti. Mutlaka veritabanı sunucuna bağlanmak istemiyorsak, yani portable çalışacaksak bir de SQLite deneyebiliriz.

    .
  • 22-07-2009, 16:57:22
    #9
    Üyeliği durduruldu
    xml ile çalışmak gerçektende sıkıcı xml den vazgeçip Mysql dönüş yaptım.
    yardımlarınızdan dolayı teşekkürler ediyorum.
    iyi günler herkese.