[ set_X @ 01.03.2005. 06:40 ] @
Nikako da mi uspe da dobijem prikaz na vise stranica...ajde da me neko uputi na neki tutorijal ili text o ovome...

Evo koda:

Code:


$dbkonekcija = mysql_connect("$dbhost", "$dbuser", "$dbpass");
if (!$dbkonekcija)
{
      echo mysql_error();
}
$db_baza = mysql_select_db("$dname");
if (!$db_baza)
{
      echo mysql_error();
}
$upit = mysql_query("SELECT * FROM pb_text");
while ($row = mysql_fetch_array("$upit")) 
{
      $text = $row['text'];
      echo "$text<br><hr><br>";
}



E sad kako da napravim prikaz na vise stranica, ne ide mi nikako?

[ Goran Rakić @ 01.03.2005. 07:20 ] @
Da li si uopste i probao da implementiras prikaz na vise stranica? Sta uopste zelis - da prikazujes 5 po 5 tekstova ili ...?

Pogledaj info o mysql LIMIT komandi.
[ noviKorisnik @ 01.03.2005. 07:24 ] @
Ne mešaj babe i žabe. MySQL čuva podatke, a PHP organizuje prikupljanje podataka potrebnih za prikaz stranice.
[ set_X @ 01.03.2005. 08:05 ] @
Citat:
noviKorisnik: Ne mešaj babe i žabe. MySQL čuva podatke, a PHP organizuje prikupljanje podataka potrebnih za prikaz stranice.


E nisam toliko glup...mozda sam se lose izrazio, ali nisam toliko glup da ne znam sta je sta.

Zeleo sam da mi PHP prikazuje 5 po 5 textova...

Kao sto je rekao Goran.
[ u_m @ 01.03.2005. 11:47 ] @
imas dvije opcije, da brojis ispise i da onda prikazes one koje zelis -ovo je php resenje

ili da iskoristis mysql + LIMIT komandu i da pomocu nje limitiras broj ispisa koje php automatski ispisuje (ne znam napamet sintaksu, a ne da mi se traziti u doc., probaj ti.)

u oba slucaja moras da prosledjujes promjenjivu koja ce govoriti koja je strana u pitanju.

tip: predlazem ti mysql opciju, imas je ovdje negdje, probaj pretragu php foruma , upisi LIMIT
[ byM4k5 @ 01.03.2005. 12:35 ] @
Code:


[b]$strana = $_GET['s'];[/b]

$dbkonekcija = mysql_connect("$dbhost", "$dbuser", "$dbpass");
if (!$dbkonekcija)
{
      echo mysql_error();
}
$db_baza = mysql_select_db("$dname");
if (!$db_baza)
{
      echo mysql_error();
}
$upit = mysql_query("SELECT * FROM pb_text [b]LIMIT '$strana[/b]', 5");
while ($row = mysql_fetch_array("$upit")) 
{
      $text = $row['text'];
      echo "$text<br><hr><br>";
}

[ set_X @ 01.03.2005. 19:30 ] @
Hvala ti mnogo, radi!
[ byM4k5 @ 01.03.2005. 23:26 ] @
Nema na cemu! :)
[ Bojan Zivanovic @ 02.03.2005. 13:37 ] @
Malo da sredimo tvoj kod:
Code:

$dbkonekcija = mysql_connect("$dbhost", "$dbuser", "$dbpass");
if (!$dbkonekcija)
{
      echo mysql_error();
}

To se obicno pise malo krace, npr:
Code:

$dbkonekcija = mysql_connect($dbhost, $dbuser, $dbpass) or die("mySQL greska: " .  mysql_error());

Bolje?
[ set_X @ 02.03.2005. 15:25 ] @
Mozda nisam rekao, ali dok sam pisao temu sam kucao kod.
Tako da se nisam trudio.

Inace znam kako se 'stedi' kod i kako se uvlaci ;)
[ Goran Rakić @ 04.03.2005. 23:21 ] @
UPOZORENJE:

Gore prikazani kod ima ogromnu gresku - Nigde nije kontrolisana varijabla $strana i kako je to ulazna promenljiva koju program prima od korisnika mogu nastati veliki problemi sa SQL Injection napadima.

Dakle bolja procedura je:
1) Uradi SQL Count kako bi video koliko ima zapisa = $num
2) Uradi celobrojno deljenje ili samo $pnum = ceil($num/5) kako bi dobio koliko ima strana
3) Ako se intval($_GET['strana']) nalazi izmedju 0 i $pnum postavi $strana = intval($_GET['strana']). Ako nije unutar intervala ili nije ni postavljena (test sa isset() nije suvisan) onda postavi $strana = 1;

sql query:
'SELECT ... LIMIT '.(($strana-1)*5).',5'