• 7 odgovora
  • 4.644 pregleda
Nagradno pitanje??? 12.11.2001. u 11:14 · pre 303 meseci #1

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?
Potpis
Bolje 100 godina biti milioner nego nedelju dana siromašak
(c) Alan ford
Re: Nagradno pitanje??? 12.11.2001. u 13:53 · pre 303 meseci #2
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
...}
Potpis
Kad sve ostalo zakaže, pročitaj uputstvo...
Re: Nagradno pitanje??? 13.11.2001. u 09:44 · pre 303 meseci #3

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.
Potpis
Bolje 100 godina biti milioner nego nedelju dana siromašak
(c) Alan ford
Re: Nagradno pitanje??? 13.11.2001. u 15:18 · pre 303 meseci #4
$rezultat=mysql_query("select * from tabela",$db) or echo ("nema nista!");

jesi probao to? ^_^
Potpis
I see dead people...
Re: Nagradno pitanje??? 13.11.2001. u 17:09 · pre 303 meseci #6
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...
Potpis
Kad sve ostalo zakaže, pročitaj uputstvo...
Re: Nagradno pitanje??? 13.11.2001. u 23:44 · pre 303 meseci #7
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!
Potpis
= come get some =
Re: Nagradno pitanje??? 15.11.2001. u 09:04 · pre 303 meseci #8

OK. Svaka cast.


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


Xvala svima.
Potpis
Bolje 100 godina biti milioner nego nedelju dana siromašak
(c) Alan ford
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme