Ha a DB_QUERY(lekérdezés,paraméterek) használom és a lekérdezés már eleve tartalmaz %d-t , akkor annak helyére illeszti be a decimális paramétert.
Pl:
DB_QUERY("select users.uid from users inner join (select node.uid from node inner join content_type_teszt_times on node.nid=content_type_teszt_times.nid where node.type='teszt_times' and DATE_FORMAT(ADDTIME(content_type_teszt_times.field_time_utc_value, SEC_TO_TIME(10)), '%Y%m%d') >= %s) as j_teaching_times on j_teaching_times.uid=users.uid group by users.uid","20090308")
A fenti kódrészlet mysql date_format függvényéhez tartozik a %d ami napot jelenti, de ennek helyére kerül a paraméter. Mi ilyenkor a megoldás?
Drupal verzió:
Fórum:
Dupla százalékjel
Dupla %-jel a megoldás
lásd: http://hu.php.net/manual/en/function.sprintf.php
-------------------------------
http://www.realdream.hu
tudod, hogy mit csinálsz?
Azt ugye tudod, hogy ezt ha lehet kerülni kell?
pp
Palócz István
https://palocz.hu | https://tanarurkerem.hu
Ezt mire érted? A paraméterek
Ezt mire érted? A paraméterek használatára? Az éles kódban a {} zárójeleket természetesen használom, de előtte ki kell próbálni az sql lekérdezést más sql menedzser programban pl. phpmyadmin stb..., hogy működik-e, és ha kész lesz akkor teszem bele a kapcsos zárójeleket.
Az egyedi sql lekérdezést nem tudom elkerülni, mert az adatbázis nagyon bonyolult lett és ezt már a views-el nem lehet megoldani.
Egy eseménynaptárt készítek, amire itt tettem fel a kérdést, hogy ckk vagy teljesen egyedi modul a javaslat, mindenki azt mondta, hogy ckk.
Az eredmény egy egyszerű lekérdezés is nagyon bonyolult lett pl.: Leválogatni a hétfő 18-órakor rendelő, angolul beszélő és idegsebész orvosokat. Ehhez kellenek a
node, users, content_type_...(több), content_type_user_profile, term_node táblák.
A content_type_ táblák nem tartalmazzák sem az uid sem a taxonomy_term kódokat és ez több tartalomtípusnál már igen bonyolult egymásba ágyazott sql lekérdezéseket kíván.
Ezt több tízezer felhasználónál nagyon optimalizálni kell, amit a views-el már nem tudok kézben tartani.
Ha biztonsági kérdésre gondoltál akkor mi az pontosabban?
-------------------------------
http://www.realdream.hu
szerintem igen
szerintem igen, adok linket, hasznos lehet:
http://drupal.hu/forum/dbprefixtables-%C3%A9s-jelek#comment-11292
Választ szeretnél? - Új kérdés, új téma - Tesztoldal - Trollkezelés - Frissítés
Kóding sztenderd
A db_query-nek nem akármilyen formában kell megadni amit akarsz, hanem igen komoly elvárások vannak vele szemben. Nem tudom, hogy mi a feladat, de a spec mysql függvények használata sem a legjobb megoldás, mivel ezzel nem portolhatóvá teszed a modulodat. (sose hidd, hogy csak itt és csak most kell majd neked vagy bárki másnak ezt felhasználnia).
pp
Palócz István
https://palocz.hu | https://tanarurkerem.hu