<linie>
<linia nazwa="1" >
<wariant id="1" nazwa="BISKUPIN - MARINO">
</wariant>
</linia>
</linie>
W bazie znajduje się tabela która ma trzy kolumny:
| nazwa_linii | typ_transportu | kierunek |
wszystkie kolumny są typu varchar.
Stworzyłem kod który wpisuje do zmiennych interesujące mnie dane a następnie wyświetla je na ekranie i zapisuje do bazy.
<?PHP require('polaczeniezbaza.php'); $typ_transportu="tramwaj"; $rozklad = simplexml_load_file('1.xml'); foreach ($rozklad->linia as $linia) { $linia_tmp=$linia->attributes(); foreach ($linia->wariant as $wariant) { $wariant_tmp=$wariant->attributes(); $zapytanie = "INSERT INTO linia (nazwa_linii, typ_transportu, kierunek) VALUES ({$linia_tmp['nazwa']}, $typ_transportu, {$wariant_tmp['nazwa']})"; } } require('zakoncz_polaczenie.php'); ?>
Problem w tym, że zapytanie nie zapisuje danych do bazy. Sprawdzałem wpisując np. VALUES (1,2,3) i tak skonstruowane zapytanie zapisuje dane. Zawartość zmiennej $zapytanie wygląda poprawnie. Jednak skrypt wyrzuca błąd: Nieznana kolumna 'BISKUPIN' w field list - dla zapytania:
Czy ktoś wie czym to może być spowodowane?
INSERT INTO linia (nazwa_linii, typ_transportu, kierunek) VALUES (1, 'tramwaj', BISKUPIN-MARINO)