Autor Zpráva
in.
Profil *
Dobrý den, potřeboval bych poradit ohledně srovnání databáze a feedu.

Napsal jsem si tento script:

<?php
$xml = simplexml_load_file('xml_feed.xml');

// chci najit produkt který bude mít ID 123
$hledam_ID = 123;

      //prohledavam xml feed
    foreach ($xml->product as $item){
             
                           // jestli ID existuje tak ho vypisu
                        if ($item->id == $hledam_ID){
                                   echo $item->id.'<br>'
                                          .$item->code.'<br>'
                                          .$item->name.'<br>'
                                          .round($item->priceVOCWithVat).'<br>'
                                          .round($item->priceMOCWithVat).'<br>';
                      }
                      exit;
    }

?>


Asi to neni moc ok, ale ucel to splni a funguje. Mám ale otázku... co když chci najít víc produktů než jeden? Třeba ID 123, 345 a 678 ?
Zkoušel jsem to přes array() ale nějak se to nepovedlo...

Díky za rady, nejspíš to bude prkotina:)
Keeehi
Profil
$hledam_ID = array(123,345,678);
...
if (in_array($item->id,$hledam_ID)){
in.
Profil *
zkusil jsem to takhle:

<?php
$xml = simplexml_load_file('xml_feed.xml');

// chci najit produkty které bude mít ID 123, 345, 678
$hledam_ID = array(123, 345, 678);
       
      //prohledavam xml feed
    foreach ($xml->product as $item){
             
                           // jestli ID existuje tak ho vypisu
                        if (in_array($item->id,$hledam_ID)){
                                  echo $item->id.'<br>'
                                          .$item->code.'<br>'
                                          .$item->name.'<br>'
                                          .round($item->priceVOCWithVat).'<br>'
                                          .round($item->priceMOCWithVat).'<br>';
                      }
                      exit;
    }

?>


Najde to jen první číslo ID123 další už ne i když ve feedu jsou. V případě, že oddělám to ID123 nenajde to nic. Nacte to jakoby jen první položku z feedu a tu porovna jestli je ok nebo ne..

nebude chyba ještě tady?
foreach ($xml->product as $item){
Keeehi
Profil
in.:
nebude chyba ještě tady?
Ne, chyba je v exit; Předtím jsem si toho nevšiml. Stačí to smazat.
in.
Profil *
Perfektní:) funguje, díky moc.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: