[ PHP CODE @ 29.10.2011. 18:05 ] @
Kako da resim ovaj problem?
Commands out of sync; you can't run this command now

Ispod je source... Imam dve while petlje, u kojima pokusavam da prozovem MySQL procedure. Prva procedura radi ok, ali kad drugu treba da izvrsi, dobijem pomenutu gresku. Procedura radi ok...
Svaka pomoc je dobrodosla!

Code:
include "functions.php";
$con = db_conn();
$sql = "CALL usr_get_menu(0, 0)";
$get_menu_0 = mysql_query($sql, $con);
echo "<pre>";
while ($db_data = mysql_fetch_array($get_menu_0)) {
    $page_title = $db_data['code_value'];
    $page_name = $db_data['codebook_name'];
    $page_id = $db_data['id'];
    echo "<br>Page title: " . $page_title . "<br>Page name: " . $page_name .
        "<br>Page ID: " . $page_id . "<br>";


    $sql = "CALL usr_get_menu(1, $page_id)";
    echo $sql;
    $get_submenu = mysql_query($sql);
    echo mysql_error();
    while ($db_data = mysql_fetch_array($get_submenu)) {
        $page_title = $db_data['code_value'];
        $page_name = $db_data['codebook_name'];
        $page_id = $db_data['id'];
        echo "<br>Page title: " . $page_title . "<br>Page name: " . $page_name .
            "<br>Page ID: " . $page_id . "<br>";
    }

}

disconnect($con);
[ Nikola Poša @ 29.10.2011. 19:59 ] @
Probaj da dodaš mysql_free_result($db_data); odma' na početku tog while-a. Ako to ne uspe, onda ćeš u tom while-u morati samo da prikupiš te podatke koje dobiješ iz prvog upita, u neki niz, dakle bez da odmah pozivaš i taj drugi upit. Tek posle, u nekom zasebnoj petlji koja obilazi prikupljene podatke, izvršavaj taj drugi upit, i tu logiku za render-ovanje podmenija.
[ PHP CODE @ 29.10.2011. 21:41 ] @
Huh, glupo je, al izgleda da ovo ne radi samo kada pozivam procedure.
Alternativno sam zamenio proceduru sa view-om i sad je ok...
Ovo sa mysql_free_result($db_data); sam bio vec pokusao, al meni nije pomoglo...
[ dsivic @ 30.10.2011. 19:02 ] @
ne mozes to rijesiti bez mysqli drivera, procitaj ovdje

http://www.elitesecurity.org/t...-Stored-Procedures-VS-PHP-FrkA