tiny ‘n’ smart
database layer

Odkazy: dibi | API reference

Oznámení

Omlouváme se, provoz fóra byl ukončen

dibi a neustálé navracení FALSE/NULL

před 8 lety

Tirus
Člen | 1

jedná se o dibi 1.2 a PHP 5.3

$result = dibi::test('SELECT [TP.NAME],[TP.ID],[TP.IMG],[TP.DESCRIPTION],[ST.ID_STORY],[ST.ID_NAME_STORY],[ST.NAME_STORY]
FROM [' . DB_PREFIX . 'topics] TP JOIN ['.DB_PREFIX.'STORIES] ST ON ST.ID_TOPIC = TP.ID
WHERE %and ', array('LANG' => $lang, 'DELETED' => 0),' ORDER BY TP.ID');

když to dám jako dibi::test a výsledek hodím do phpMyAdmin, tak vše šlape… deleted jsem nastavil jako bool a přetypoval mi to na tinyint…

Editoval Tirus (19. 6. 2011 14:25)

před 8 lety

HosipLan
Moderator | 4693

Zkus si pohrát s modifikátory

... array('LANG%s' => $lang, 'DELETED%i' => 0) ...

A taky se zbat těch otřesných konstant, na to jsou v dibi substituce. A když už jsem v tom rejpání, ty velká písmena jsou otřesná, tobě to příjde přehledné?

Srovnej

$result = dibi::select('[tp.name],[tp.id],[tp.img],[tp.description],',
        '[st.id_story],[st.id_name_story],[st.name_story]')
    ->from(':db:topics tp')
    ->leftJoin(':db:stories st')
        ->on('st.id_topic = tp.id')
    ->where('%and ', array('tp.lang%s' => $lang, 'tp.deleted%i' => 0))
    ->orderBy('tp.id')
    ->fetchAll(); // nebo ->test()

a

$result = dibi::test('SELECT [TP.NAME],[TP.ID],[TP.IMG],[TP.DESCRIPTION],[ST.ID_STORY],[ST.ID_NAME_STORY],[ST.NAME_STORY]
FROM [' . DB_PREFIX . 'topics] TP JOIN ['.DB_PREFIX.'STORIES] ST ON ST.ID_TOPIC = TP.ID
WHERE %and ', array('LANG' => $lang, 'DELETED' => 0),' ORDER BY TP.ID');