Szanowni forumowicze,
Proszę Was o pomoc w rozwiązaniu problemu z zapytaniami. Otóż gdy wykonuje od 2 zapytań w górę(chyba obojętnie jakie) albo w metodzie kontrolera, bądź część w module, część w kontrolerze, to wywala mi taki błąd:

Database_Exception [ 2014 ]: Commands out of sync; you can't run this command now [ SELECT node.id,CONCAT( REPEAT( '-', (COUNT(parent.name) - 1) ), node.name) AS name FROM nastedcategories AS node, nastedcategories AS parent WHERE node.lft BETWEEN parent.lft AND parent.rgt GROUP BY node.name ORDER BY node.lft; ]

Jak wrzuciłbym, to do widoku, to jest ok...

Podam zapytania w kolejności(dla przejrzystości usunąłem zmiennie i zamieniłem ze stringami):

Kopiuj
// 1
$results = DB::query(NULL, 'CALL catadd04(4,\'nazwa_kategorii\');')->execute();  
// 2
$query_cat = DB::query(Database::SELECT, "SELECT node.id,CONCAT( REPEAT( '-', (COUNT(parent.name) - 1) ), node.name) AS name FROM nastedcategories AS node, nastedcategories AS parent WHERE node.lft BETWEEN parent.lft AND parent.rgt GROUP BY node.name ORDER BY node.lft;")->execute();

Z procedurą jest wszystko ok, w konsoli MySQL działa, i w widoku(!) też(nawet w kontrolerze, jeżeli jest 1 zapytanie). Tak samo z select.

Z tego co wyczytałem na googlach, to problem jest z buforem w MySQL. Ale funkcja:
mysqli_free_result($results) nie działa, to wywala, że $results jest ma zły typ(int).
Chciałem użyć tej samej funkcji w MySQL, ale nie wiem jak się nazywa wynik tego zapytania, tzn. jaki argument podać funkcji mysql_free_result()...
To jest w ogóle dziwne, żeby nie móc 2 zapytań pod rząd zrobić... W widokach przecież tego nie mogę robić, bo to niepoprawne, a miałem tak tymczasowo zrobione, ponieważ nigdzie nie znalazłem rozwiązania(ale pytań, o to sporo).
Jak, to jest że inni nie mają z tym problemów i wykonują ile chcą zapytań? Nie rozumiem tego.

Dziękuję serdecznie,
A.