Možná už se to tu asi stokrát řešilo, ale nějak jsem nenašel vhodný způsob, který by mi fungoval. Moc se v SQL nevyznám a tak nejsem jistej, jak je to s uvozovkama. Napsal jsem požadavek takto:
$sql = "INSERT INTO `test` (`Jmeno`, `Adresa`) VALUES ('$name', '$adresa')";
ale i takto:
$sql = "INSERT INTO `test` (`Jmeno`, `Adresa`) VALUES ($name, $adresa)";
a také takto
$sql = "INSERT INTO `test` (`Jmeno`, `Adresa`) VALUES (`$name`, `$adresa`)";
První způsob mi do tabulky vloží text $name a $adresa
druhý a třetí pak nahlásí tuto chybu:
Nezn-Bámý sloupec '$jmeno' v field list
Omlouvám se za trivialitu dotazu (s databázema začínám). Dík
Tak jsem to přepsal a už to funguje, ale stejně mi to stále není moc jasný, tak pokud budete mít někdo náladu a ujasníte mi to, budu moc rád. Dík
insert into test (Jmeno, Adresa) values ('$name', '$adresa')
Co vim ... tak v MySQL se textove retezce uzaviraji do apostrofu 'dsfd' ... tzn. konkretni vkladane hodnoty
Jmena sloupcu se mohou (a nemusi pokud tomu nic nebrani) uzavirat do zpetnych apostrofu ... `tabulka`, ... `sloupec`
Radek
Dík Radku. To jsem si taky myslel, ale pak mi není jasný, proč mi nefungoval ten třetí způsob. No ale teď už to nějak funguje (nejsem si moc jistej, co jsem vůbec změnil), tak to bude snad dobrý. Akorát to všechno dělám pokus omyl na podesátý, ale to jsou holt začátky :-)
Ten treti zpusob ...
$sql = "INSERT INTO `test` (`Jmeno`, `Adresa`) VALUES (`$name`, `$adresa`)";
... nemuze fungovat pro to, ze retezce se uzavyraji do '...' a ne do `...`
Radek
Jo jasně, konečně mi to docvaklo :-) ... že to ale trvalo ... nějak jsem nedokázal akceptovat rozdíl mezi ` a ' ale už je mi to jasný.
Dík moc.
Zalezi taky, jestli ten query v PHP zabalis do apostrofu nebo do uvozovek. Pokud do apostrofu, pak se $promenne nevyhodnocuji.