Próbuję już kilka godzin jak zmienić wartość w pliku .XML i niestety nie mogę sobie poradzić. Przeszukałem kilka stron i mam taki oto kod:
$xml = simplexml_load_file('baza/ogloszenia.xml'); foreach($xml->ogloszenia->ogloszenie as $ogloszenie) { if ($ogloszenie['nr'] == "3") { $ogloszenie['marka'] = "Opel"; break; } } file_put_contents('baza/ogloszenia.xml', $xml->asXml());
Plik .xml
<ogloszenia> <ogloszenie nr="3"> <marka>Deawoo</marka> <model>xxxx</model> <typ>xxxx</typ> <zdjecia> <zdjecie>images/3_1.jpg</zdjecie> <zdjecie>images/3_2.jpg</zdjecie> <zdjecie>images/3_3.jpg</zdjecie> <zdjecie>images/3_4.jpg</zdjecie> </zdjecia> <cena>2000</cena> <wojewodztwo>xxxx</wojewodztwo> <rocznik>1991</rocznik> <silnik>xxxx</silnik> <opis>xxxx</opis> <sprzedajacy id="2"/> </ogloszenie> </ogloszenia>
Na jeden stronie znalazłem podobne rozwiązanie i autor napisał, że u niego działa. U mnie przy pętli wywala błąd:
Warning: Invalid argument supplied for foreach() in ...