---
mam takie zapytanie:
Kod
209 $query = 'UPDATE "TBLSELECT" SET "TBLSELECT"."SELKEYWORD" = '.$selkey.' WHERE ("TBLSELECT"."IDSESSION" = 1)';
210 $result = ibase_query($connection, $query);
210 $result = ibase_query($connection, $query);
i komunikat:
Warning: ibase_query() [function.ibase-query]: Dynamic SQL Error SQL error code = -104 Token unknown - line 1, column 61 WHERE in G:\www\mmbase\index.php on line 210
to samo kawałek dalej:
Kod
214 $query = 'SELECT "tblMody"."TITLE","tblMody"."AUTHOR","tblMody"."URL1","tblMody"."URL2","tblMody"."IDCTG"
215 FROM "tblMody"
216 WHERE ("tblMody"."IDCTG" = '.$selctg.')
217 AND ("tblMody"."IDSUB"= '.$subctg.')
218 AND ("tblMody"."KEYWORD"= '.$selkey.')';
219 // wykonuje zapytanie ...
220 $result = ibase_query($connection, $query);
215 FROM "tblMody"
216 WHERE ("tblMody"."IDCTG" = '.$selctg.')
217 AND ("tblMody"."IDSUB"= '.$subctg.')
218 AND ("tblMody"."KEYWORD"= '.$selkey.')';
219 // wykonuje zapytanie ...
220 $result = ibase_query($connection, $query);
Warning: ibase_query() [function.ibase-query]: Dynamic SQL Error SQL error code = -104 Token unknown - line 5, column 37 ) in G:\www\mmbase\index.php on line 220
---
tabela TBLSELECT wygląda tak:
IDSESSION INTEGER NOT NULL,
SELCTG INTEGER,
SELSUBCTG INTEGER,
SELKEYWORD VARCHAR(64)
a tabela tblMody tak:
IDCTG INTEGER,
IDSUB INTEGER,
KEYWORD VARCHAR(64),
TITLE VARCHAR(128),
AUTHOR VARCHAR(50),
Serwer to Firebird 2.0 na localhost.
Tak samo skonstruowane zapytania dla zmiennych $selctg i $subctg działa bezbłędnie, a dla $selkey wywala błędy. Dwie pierwsze są INTEGER a $selkey VARCHAR
---
Wprawdzie nikt mi nie odpowiedział, ale sam znalazłem rozwiązanie:
zamiast '.$selkey.' trzeba zastosować '."'$selkey'".'

Muszę przyznać, że konstrukcja dość karkołomna - ale działa.
---
Temat do zamknięcia ( no chyba, że jest jeszcze jakieś inne rozwiązanie)