[ mika @ 12.11.2001. 11:14 ] @

Salim se, nije nagradno...


E pa ovako: imam konstrukciju ovog tipa:

$rezultat=mysql_query("select * from tabela",$db);
if($rezultat){
while($r=mysql_fetch_array($rezultat)){
extract($r);
echo $blablabla;
}
mysql_free_result($rezultat);
}

Dakle, citam kompletnu tabelu iz baze i nesto od toga ispisujem. E, sad to sve shljaka, samo sto mi javlja gresku ako upit ne vraca ni jedno polje, tipa:

WARNING, wrong datatype in extract()....

probao sam i: if (mysql_num_rows($rezultat)), if (isset($rezultat)) i uvek isto... ovo je samo warning, a ja bih hteo nekako da ga izbegnem.
Mislim, imam jedno "prirucno" resenje: da u telu while petlje stavim :

$ime=$r["ime"];
$prezime=$r["prezime"];

...ali mi se to ne cini elegantnim, pogotovu ako imam vise od 10 polja. Ima li neko lek?
[ Jbyn4e @ 12.11.2001. 13:53 ] @
Citat:
mika je napisao:
if($rezultat){
...
}
...
probao sam i: if (mysql_num_rows($rezultat)), if (isset($rezultat)) i uvek isto... ovo je samo warning, a ja bih hteo nekako da ga izbegnem.

A da probas:
if (mysql_num_rows($rezultat) != 0) { //ako nije 0 broj redova, onda uradi
...}
[ mika @ 13.11.2001. 09:44 ] @

Pa, prijatelju, if(mysql_num_rows($rezultat)) konstrukcija je ekvivalentna konstrukciji if (mysql_num_rows($rezultat)!=0), sto (verovatno) znas i iz C-a....


Jebi ga, moracu onako rucno, sta da se radi.
[ Divine @ 13.11.2001. 15:18 ] @
$rezultat=mysql_query("select * from tabela",$db) or echo ("nema nista!");

jesi probao to? ^_^
[ Zoran Rašković @ 13.11.2001. 16:59 ] @
if (!mysql_num_rows($rezultat)) {

... radi sta oces ovde
}
[ Jbyn4e @ 13.11.2001. 17:09 ] @
Citat:
mika je napisao:
Pa, prijatelju, if(mysql_num_rows($rezultat)) konstrukcija je ekvivalentna konstrukciji if (mysql_num_rows($rezultat)!=0), sto (verovatno) znas i iz C-a....

Ovaj, onaj, ipak ovo nije c:
if (mysql_num_rows($rez))
echo "ima: ". mysql_num_rows($rez);
else echo "NEMA bre!";
kad pokrenem ovako skripticu, dobijem:
NEMA bre!
Kad ostavim samo:
echo "ima: " . mysql_num_rows($rez);
dobijem:
ima: 0

hm... mrzi me sad da razmisljam...
[ dukenukem @ 13.11.2001. 23:44 ] @
ako pokusas da vidis sve elemente niza koji vraca mysql_fetch_array(), videces da izgleda otprilike ovako:

$r[0]="janicije";
$r["ime"]="janicije";
$r[1]="karic";
$r["prezime"]="karic";
... (itd)...

dakle, extract($r) pokusa da dodeli $0="janicije" - i, naravno, "puca".

zato su ljudi izmislili:
mysql_fetch_assoc (int result)

zameni to u kodu, i...
peetchi!
[ mika @ 15.11.2001. 09:04 ] @

OK. Svaka cast.


Mislim, to sljaka bez extract ali sam hteo nesto elegantnije, a to je mysql_fetch_assoc() ili kako vec.


Xvala svima.