Autor Zpráva
Anonymní
Profil *
Ahoj, proč, když volám proceduru zpracujObsah(parametrem tu je nazev pozadovaneho sloupce z DB) mi první volání vypíše správně získanou hodnotu, druhé volání už nevypíše nic. Jde to nějak zprovoznit?



$dbObsah = mysql_query("SELECT * FROM obsah WHERE sekce = '$urlSekce' AND menu = '$urlMenu' AND podmenu = '$urlPodmenu'");


function zpracujObsah($sloupec){

global $dbObsah;

while($obsah = mysql_fetch_array($dbObsah)){

echo $obsah[$sloupec];

}

}


zpracujObsah("podmenu");

zpracujObsah("obsah");

Alphard
Profil
po prvním volání se script dostane na konec sady vrácené databází a při druhém tam zůstává, takže se nic nevypíše

Jde to nějak zprovoznit?
nevím o funkci, která by to vrátila na začátek, ale neznám všechny, projdi manuál
Alphard
Profil
teď mě napadá, zkus $dbObsah nedefinovat jako globální, ale předávat parametrem, bude se pracovat s kopií a půjde použít vícekrát
joejoe
Profil *
zkus mysql_data_seek()
krteczek
Profil
doporučuji to celé uzavřit do funkce včetně dotazu a návratovou hodnotu funkce by mohla být array ve které jsou výsledky dotazu.
Anonymní
Profil *
Děkuju.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: