Oznámení
vice vysledku v DibiResult (s ODBC driverem; odbc_next_result) ?
před 10 lety
- wdolek
- Člen | 331
lze pomoci dibi vytvorit dotaz, ktery by vracel vice vysledku… a pak ve vysledcich prechazet? koukam do API dokumentace a nemuzu najit, v quickstartu taktez nic.
pouzivam ODBC s MSSQL… http://us3.php.net/…t-result.php
? :)
před 10 lety
- wdolek
- Člen | 331
.. vlastne kdyz na to tak koukam, mohl bych udelat…
$result = $db->query('EXECUTE myExtraCoolOmniStoredProcedure');
// foo result
$foo = $result->fetchAll();
// seek to next result :)
odbc_next_result($result->getResource());
// bar result
$bar = $result->fetchAll();
jen si tedy nejsem jisty, jak to ovlivni chovani dibi, kdyz si na ten druhy vysledek prejdu takhle samostatne. a na lusteni zdrojaku je jeste prilis brzo 8)
před 10 lety
- LastHunter
- Člen | 1539
A co foreach? :)
foreach($result->fetchAll() as $row) {
//do whatever you want
}
EDIT: dibi má i metodu seek, která tě posune na další výsledek, viz Quick Start – Získávání výsledků.
Editoval LastHunter (21. 7. 2009 14:16)
před 10 lety
- wdolek
- Člen | 331
LastHunter: tedy nevim nevim…
- v dibi pro odbc nikde nevidim „odbc_next_result“ – fetch all fetchuje pouze z jednoho vysledku (alespon co se divam do dokumentace php)
- seek funkce pro odbc driver taktez nepresouva kurzor na dalsi vysledek (jen neco priradi do radku a vrati true)
před 10 lety
- wdolek
- Člen | 331
LastHunter: ano, skutecne fetchAll vubec nepocita s „vicevysledkovym“ vysledkem :( dokonce ani query, ani ten zpusob, ktery sem uvedl nefunguje – vysledek je vzdy prazdne pole :(
a tak me napada, ze mozna tohle neni ani v moci ODBC + MSSQL
Editoval wdolek (22. 7. 2009 14:00)