• 05-12-2020, 03:19:27
    #1
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Herkese selamlar,
    elimde aşağıda ki gibi bir XML verisi var. Bu satırı nasıl çekebilirim ?

    <root>
    <err Type="0" Desc="Basarili"/>
    <Stok Kategori_Id="1810" AnaGrup_Kod="" AnaGrup_Ad="Çevre Birimleri" AltGrup_Kod="" AltGrup_Ad="Monitörler" Kod="CE261ASU181" Ad="31.5 ASUS ROG STRIX XG32VC IPS 2K 1MS 170Hz HDMI" Doviz="1" Fiat_SKullanici="0.00" Fiat_Bayi="0.00" Miktar="2" Garanti="24" Marka="ASU" Desi="20.04" Marka_Ismi="Asus" Kdv="18" barkod="4718017790536"/>
    </root>
    1000 satırdan fazla vardır.
  • 05-12-2020, 13:30:33
    #2
    Yönlendirme yapabilecek yok mu?
  • 07-12-2020, 14:45:16
    #3
    $xmlString = '<root>
    <err Type="0" Desc="Basarili"/>
    <Stok Kategori_Id="1810" AnaGrup_Kod="" AnaGrup_Ad="Çevre Birimleri" AltGrup_Kod="" AltGrup_Ad="Monitörler" Kod="CE261ASU181" Ad="31.5 ASUS ROG STRIX XG32VC IPS 2K 1MS 170Hz HDMI" Doviz="1" Fiat_SKullanici="0.00" Fiat_Bayi="0.00" Miktar="2" Garanti="24" Marka="ASU" Desi="20.04" Marka_Ismi="Asus" Kdv="18" barkod="4718017790536"/>
    </root>';
    
    $xml = simplexml_load_string($xmlString);
    echo $xml->Stok["AnaGrup_Ad"];
    bu şekilde alabilirsin.
  • 08-12-2020, 09:47:11
    #4
    ekremogul adlı üyeden alıntı: mesajı görüntüle
    $xmlString = '<root>
    <err Type="0" Desc="Basarili"/>
    <Stok Kategori_Id="1810" AnaGrup_Kod="" AnaGrup_Ad="Çevre Birimleri" AltGrup_Kod="" AltGrup_Ad="Monitörler" Kod="CE261ASU181" Ad="31.5 ASUS ROG STRIX XG32VC IPS 2K 1MS 170Hz HDMI" Doviz="1" Fiat_SKullanici="0.00" Fiat_Bayi="0.00" Miktar="2" Garanti="24" Marka="ASU" Desi="20.04" Marka_Ismi="Asus" Kdv="18" barkod="4718017790536"/>
    </root>';
    
    $xml = simplexml_load_string($xmlString);
    echo $xml->Stok["AnaGrup_Ad"];
    bu şekilde alabilirsin.
    @ekremogul; cevabın için teşekkür ederim. Fakat bu <Stok ...> 'dan 1080 satır var ve hiç biri aynı değil. Listelemesini yapamıyorum. XML olarak listelemiyor denediğimde.
  • 08-12-2020, 10:13:39
    #5
    Örneği verirken tek Stok olarak verdiğin için o şekilde yazdım. Eğer Stok birden fazla ise

    $xmlString = '<root>
    <err Type="0" Desc="Basarili"/>
        <Stok Kategori_Id="1810" AnaGrup_Kod="" AnaGrup_Ad="Çevre Birimleri" AltGrup_Kod="" AltGrup_Ad="Monitörler" Kod="CE261ASU181" Ad="31.5 ASUS ROG STRIX XG32VC IPS 2K 1MS 170Hz HDMI" Doviz="1" Fiat_SKullanici="0.00" Fiat_Bayi="0.00" Miktar="2" Garanti="24" Marka="ASU" Desi="20.04" Marka_Ismi="Asus" Kdv="18" barkod="4718017790536"/>
        <Stok Kategori_Id="1811" AnaGrup_Kod="" AnaGrup_Ad="Ana Birimleri" AltGrup_Kod="" AltGrup_Ad="Monitörler" Kod="CE261ASU181" Ad="31.5 ASUS ROG STRIX XG32VC IPS 2K 1MS 170Hz HDMI" Doviz="1" Fiat_SKullanici="0.00" Fiat_Bayi="0.00" Miktar="2" Garanti="24" Marka="ASU" Desi="20.04" Marka_Ismi="Asus" Kdv="18" barkod="4718017790536"/>
    </root>';
    $xml = simplexml_load_string($xmlString);
    foreach ($xml->Stok as $Stok){
        echo $Stok["AnaGrup_Ad"]."<br />";
    }
    bu şekilde yapabilirsin
  • 08-12-2020, 10:26:43
    #6
    ekremogul adlı üyeden alıntı: mesajı görüntüle
    Örneği verirken tek Stok olarak verdiğin için o şekilde yazdım. Eğer Stok birden fazla ise

    $xmlString = '<root>
    <err Type="0" Desc="Basarili"/>
        <Stok Kategori_Id="1810" AnaGrup_Kod="" AnaGrup_Ad="Çevre Birimleri" AltGrup_Kod="" AltGrup_Ad="Monitörler" Kod="CE261ASU181" Ad="31.5 ASUS ROG STRIX XG32VC IPS 2K 1MS 170Hz HDMI" Doviz="1" Fiat_SKullanici="0.00" Fiat_Bayi="0.00" Miktar="2" Garanti="24" Marka="ASU" Desi="20.04" Marka_Ismi="Asus" Kdv="18" barkod="4718017790536"/>
        <Stok Kategori_Id="1811" AnaGrup_Kod="" AnaGrup_Ad="Ana Birimleri" AltGrup_Kod="" AltGrup_Ad="Monitörler" Kod="CE261ASU181" Ad="31.5 ASUS ROG STRIX XG32VC IPS 2K 1MS 170Hz HDMI" Doviz="1" Fiat_SKullanici="0.00" Fiat_Bayi="0.00" Miktar="2" Garanti="24" Marka="ASU" Desi="20.04" Marka_Ismi="Asus" Kdv="18" barkod="4718017790536"/>
    </root>';
    $xml = simplexml_load_string($xmlString);
    foreach ($xml->Stok as $Stok){
        echo $Stok["AnaGrup_Ad"]."<br />";
    }
    bu şekilde yapabilirsin
    Evet doğrudur bu şekilde aslında olması gerekiyor. Fakat verdikleri link uzantısı XML değil. php uzantılı sadece içerisine verileri XML diye yansıtmışlar.
  • 08-12-2020, 10:29:04
    #7
    Uzantının ne olduğu önemli değil. İçerik doğru xml formatında olsun yeterli
  • 08-12-2020, 10:30:29
    #8
    ekremogul adlı üyeden alıntı: mesajı görüntüle
    Uzantının ne olduğu önemli değil. İçerik doğru xml formatında olsun yeterli
    $xmlString değerine web sitenin adresini yazıyorum. Fakat bir dönüş sağlamıyor
  • 08-12-2020, 10:34:00
    #9
    $xmlString = "https://site.ltd" şeklinde yazarsanız almaz.

    $xmlString = file_get_content("https://site.ltd");

    şeklinde yazmanız gerekmekte. file_get_content fonksiyonu ile uzaktaki adresi veya yereldeki dosyası okuyarak içeriğin değişkene aktarır.
    bu şekilde deneyin.