[ stranac2 @ 07.11.2002. 07:47 ] @
Dio koda:
.....
$query="SELECT numericko_polje, tekstualno_polje From prva";
$result=mysql_query($query,$connection);
for ($i = 0; $i < mysql_num_rows($result); $i++) {
mysql_data_seek($result, $i);
$row=mysql_fetch_row($result);
echo $row[1];
echo "<br>";
}
.....
Problem:
Treba prikazati podatke iz tabele prva.
Sa echo $row[1] ne dobijem nikakav rezultat, a sa echo $row[0] sve je u redu.
Da li je stvar u tome što je prvo polje numeričko (mediumint(9)), a drugo tekstualno (char(100))?
U slučaju da u for petlji umjesto $i < mysql_num_rows($result) stavim npr. $i < 100 sve radi dobro. U čemu je stvar?
Zahvljujem na svakoj pomoći!

Pozdrav
[ Zoran Rašković @ 07.11.2002. 09:44 ] @
Probaj ovo

Code:

$result=mysql_query("select num_polje, text_polje from prva , $db);
while ($myrow=mysql_fetch_row($result)) {
echo $myrow[0], $myrow[1];
echo "<br>";
}
[ stranac2 @ 08.11.2002. 09:23 ] @
Zahvaljujem Judge Dred-u, ali ...
Ponovo ne dobijem nikakav rezultat (PRAZNA stranica).
Kod mi je jasan (to je školski primjer, koristim takve konstrukcije). Ja sam testirao mysql_data_seek jer na taj način mislim riješiti navigacijske gumbe (prethodni, sljedeći).

Ako postoji volja za daljnje kopanje ... Unaprijed zahvaljujem


[ Goran Rakić @ 08.11.2002. 16:17 ] @
sto se tiče data seek-a mozes ga zameniti sa LIMIT $pocetak,$step u query-ju, gde je $step broj koliko hoces da prikazujes ispisa na strani, a $pocetak pocetni broj.

Ako ti ne vraca vrednost, proveri da li je query uspeo, probaj da dodas " or die("query nije uspeo"); ".
[ stranac2 @ 11.11.2002. 07:03 ] @
Odgovor Go! X -u:

Prijedlog za query je OK, ali query se izvrši. Keep looking...
[ mika @ 11.11.2002. 11:55 ] @
Očigledno ti mysqlnumrows($result) ne vraća ništa. Probaj:

Code:
echo mysqlnumrows($result);

...i vidi šta vraća.Pretpostavljam da je nula i vidi nekako izmeni to. Mučio sam se i ja sa tim dosta dugo (a što je najgore ne sećam se kako sam rešio, jer nisam dugo radio u PHP-u)
[ stranac2 @ 11.11.2002. 12:41 ] @
mika,
hvala na trudu, ali ne pomaže (već sam to i sam pokušavao).
Što se dešava:
A) Stavim u petlju "mysql_num_rows($result);" i "echo mysql_num_rows($result);" ispred petlje i u petlju. Rezultat: ništa (prazno).
B) Stavim u petlju umjesto "mysql_num_rows($result);" npr. "100" i onda dobijem izlaz i za "echo" izvan i unutar petlje.

Misterija... Keep looking...
[ Jbyn4e @ 11.11.2002. 16:33 ] @
Probaj sledeci test program, pa javi sta si dobio:
Citat:

<?
$connection=mysql_connect("localhost", "root", "password") or die("Ne mog se povezem na bazu!"); //zameni ove vrednosti sa onima koje su kod tebe
echo "otvorio bazu<BR>";
mysql_select_db("baza", $connection); //izmeni naziv baze umesto ovoga
echo "selektovao bazu<BR>";
$query="SELECT kod, naziv from zemlja"; //promeni u sta ti treba
$result=mysql_query($query,$connection);
$a = mysql_num_rows($result);
echo "Ima ".$a." reda u rezultatu i to su:<BR>";
for ($i = 0; $i < mysql_num_rows($result); $i++)
{
mysql_data_seek($result, $i);
echo "Pozicionirao se na red br.".$i." i njegove vrednosti su:<BR>";
$row=mysql_fetch_row($result);
echo $row[0]." i ".$row[1];
echo "<br>";
}
mysql_close($connection);
echo "zatvorio bazu<BR>";
?>


P.S. Ja probao sa: kod je char(2), naziv je varchar(40). Takodje sam napravio i test sa jednim poljem koje je tinyint(4) i sve lepo prikazuje...
[ stranac2 @ 12.11.2002. 07:06 ] @
Jbyn4e,
stvarno si se potrudio, svaka čast.
Prilagodio sam kod i rezultat je ponovo PRAZNA stranica (ne ispiše se niti jedan echo - bilo izvan petlje bilo u petlji).
Kad u petlju umjesto "$i < mysql_num_rows($result)" upišem "$i < 100" (bilo koji BROJ) sve radi super.
Inače (ako to ima veze) radim s PHPTriad na Windows98.

Pozdrav
[ stranac2 @ 12.11.2002. 07:55 ] @
Ljudi, stvar je KONAČNO riješena!

Problem je bio u broju slogova. Bilo je oko 2600 slogova u bazi i nije ih bilo moguće sve prikazati pa sam onda dobio praznu stranicu. Ne znam što je ograničavajući faktor - stroj (RAM), browser, Apache, php, mysql.
U glavnom, do nekih 500 slogova sve radi OK. Kod je cijelo vrijeme bio u redu.

Zna li tko nešto o ovim ograničenjima?
Pozdrav
[ Pajer @ 12.11.2002. 08:13 ] @
U php.ini mozes ograniciti max vreme za izvrsavanje skripta. Ti si verovatno presao taj limit. Probaj da podignes tu vrednost u php.ini

[ stranac2 @ 12.11.2002. 09:54 ] @
Pajer, to je to i plus toga podesiti max. količinu RAM-a. U svakom slučaju treba podesiti php.ini.
Thanks