Porcjowanie wyników zapytania z pagebreak
|
tubi |
Dodany dnia 09.09.2008 12:13:30
|

Przedszkolak

Postów: 34
Data rejestracji: 27.05.2007 23:47
|
Mam taki kod:
<?php
$wynik = dbquery("SELECT * FROM ".$db_prefix."serial ORDER BY page_id DESC LIMIT 99999");
if(dbrows($wynik) > 0) {
while($r = dbarray($wynik)) {
if($r['page_cat'] == 1) {
echo "<table><tr><td height='100'>
<h4><a href='../viewserial.php?page_id=".$r['page_id']."'>".$r['page_title']."</a></h4>
<a href='../viewserial.php?page_id=".$r['page_id']."'>";
if($r['page_foto'] != "") {
echo "<img src='../images/seriale/".$r['page_foto']."' style='margin:5px;' align='left'>";
} else {
echo "<img src='../images/brak_zdjecia.jpg' style='margin:5px;' align='left'>";
}
echo "</a><img src='../images/ico-1.jpg' style='margin:5px;' align='left'><b>Opis:</b> ".$r['page_content']."<br>
<b>Doda?:</b> <a href='".BASEDIR."profile.php?lookup=".$r['user_id']."' target='_blank'>".$r[user_name]."</a><br>
<img src='../images/ico-5.jpg' style='margin:2px;' align='left'><b>Data dodania:</b> ".showdate("longdate", $r['page_datestamp'])."</td></tr><tr><td><hr></td></tr></table>";
if(dbrows($wynik) > 20) {
echo "<!-- pagebreak -->";
}
}
}
}
?>
Odpowiedzialny jest on za wy?wietlanie zawarto?ci tabeli serial. I chcia?em zrobi? tak ?e je?eli b?dzie dodane powy?ej 20 wpisów z danej kategorii to wy?wietla 20 a po nich nast?puje pagebreak czy tak jak w artyku?ach nowa strona, kolejne 20 i znowu pagebreak. Niestety nie uda?o mi si? tego osi?gn??. Móg?by kto? pomóc? :)
PW od moderatora:
- Przeniesienie tematu - Pieka 09.09 - 12:23
|
|
|
|
W?cibski Go?? |
Dodany dnia 08.09.2025 14:11:38
|
Pan Kontekstualny
Postów: n^x
Data rejestracji: Zawsze
|
|
IP: localhost |
|
|
bartek124 |
Dodany dnia 09.09.2008 16:41:18
|

Weteran

Postów: 3264 Pomógł: 236
v7.02.06 Data rejestracji: 26.05.2007 12:25
|
Spróbuj tak:
<?php
$serials_per_page = 20;
$rowstart = (isset($_GET['rowstart']) && isnum($_GET['rowstart']) ? $_GET['rowstart'] : 0);
$wynik = dbquery("SELECT * FROM ".$db_prefix."serial ORDER BY page_id DESC LIMIT $rowstart,$serials_per_page");
$countr = dbcount("(page_id)", "serial");
if(dbrows($wynik) != 0) {
while($r = dbarray($wynik)) {
if($r['page_cat'] == 1) {
echo "<table><tr><td height='100'>
<h4><a href='../viewserial.php?page_id=".$r['page_id']."'>".$r['page_title']."</a></h4>
<a href='../viewserial.php?page_id=".$r['page_id']."'>";
if($r['page_foto'] != "") {
echo "<img src='../images/seriale/".$r['page_foto']."' style='margin:5px;' align='left'>";
} else {
echo "<img src='../images/brak_zdjecia.jpg' style='margin:5px;' align='left'>";
}
echo "</a><img src='../images/ico-1.jpg' style='margin:5px;' align='left'><b>Opis:</b> ".$r['page_content']."<br>
<b>Doda?:</b> <a href='".BASEDIR."profile.php?lookup=".$r['user_id']."' target='_blank'>".$r['user_name']."</a><br>
<img src='../images/ico-5.jpg' style='margin:2px;' align='left'><b>Data dodania:</b> ".showdate("longdate", $r['page_datestamp'])."</td></tr><tr><td><hr></td></tr></table>";
}
}
if($countr > $serials_per_page) echo "<div align='center' style='margin-top:5px;'>\n".makepagenav($rowstart,$serials_per_page,$countr,3)."\n</div>\n";
}
?>
Nie pomagam na komunikatorach oraz PW!
|
|
|
|
tubi |
Dodany dnia 09.09.2008 17:02:31
|

Przedszkolak

Postów: 34
Data rejestracji: 27.05.2007 23:47
|
Hmmm.... pierwsza strona wy?wietla si? dobrze ale jak przechodz? do 2 to wy?wietla si? b??d "Nie mo?na odczyta? zawarto?ci strony."
|
|
|
|
bartek124 |
Dodany dnia 09.09.2008 18:07:47
|

Weteran

Postów: 3264 Pomógł: 236
v7.02.06 Data rejestracji: 26.05.2007 12:25
|
Ma?y b??d.
Teraz powinno dzia?a?:
<?php
$serials_per_page = 20;
$rowstart = (isset($_GET['rowstart']) && isnum($_GET['rowstart']) ? $_GET['rowstart'] : 0);
$wynik = dbquery("SELECT * FROM ".$db_prefix."serial ORDER BY page_id DESC LIMIT $rowstart,$serials_per_page");
$countr = dbcount("(page_id)", "serial");
if(dbrows($wynik) != 0) {
while($r = dbarray($wynik)) {
if($r['page_cat'] == 1) {
echo "<table><tr><td height='100'>
<h4><a href='../viewserial.php?page_id=".$r['page_id']."'>".$r['page_title']."</a></h4>
<a href='../viewserial.php?page_id=".$r['page_id']."'>";
if($r['page_foto'] != "") {
echo "<img src='../images/seriale/".$r['page_foto']."' style='margin:5px;' align='left'>";
} else {
echo "<img src='../images/brak_zdjecia.jpg' style='margin:5px;' align='left'>";
}
echo "</a><img src='../images/ico-1.jpg' style='margin:5px;' align='left'><b>Opis:</b> ".$r['page_content']."<br>
<b>Doda?:</b> <a href='".BASEDIR."profile.php?lookup=".$r['user_id']."' target='_blank'>".$r['user_name']."</a><br>
<img src='../images/ico-5.jpg' style='margin:2px;' align='left'><b>Data dodania:</b> ".showdate("longdate", $r['page_datestamp'])."</td></tr><tr><td><hr></td></tr></table>";
}
}
if($countr > $serials_per_page) echo "<div align='center' style='margin-top:5px;'>\n".makepagenav($rowstart,$serials_per_page,$countr,3, "?page_id=".$_GET['page_id']."&")."\n</div>\n";
}
?>
Nie pomagam na komunikatorach oraz PW!
|
|
|
|
tubi |
Dodany dnia 09.09.2008 18:29:27
|

Przedszkolak

Postów: 34
Data rejestracji: 27.05.2007 23:47
|
Niestety dalej jest problem tym razem nic si? nie wy?wietla na str.2.
Dzia?anie tutaj: http://beta.relax...?page_id=4
|
|
|
|
bartek124 |
Dodany dnia 09.09.2008 18:36:05
|

Weteran

Postów: 3264 Pomógł: 236
v7.02.06 Data rejestracji: 26.05.2007 12:25
|
<?php
$serials_per_page = 20;
$rowstart = (isset($_GET['rowstart']) && isnum($_GET['rowstart']) ? $_GET['rowstart'] : 0);
$wynik = dbquery("SELECT * FROM ".$db_prefix."serial ORDER BY page_id DESC LIMIT $rowstart,$serials_per_page");
$countr = dbcount("(page_id)", "serial");
while($r = dbarray($wynik)) {
if($r['page_cat'] == 1) {
echo "<table><tr><td height='100'>
<h4><a href='../viewserial.php?page_id=".$r['page_id']."'>".$r['page_title']."</a></h4>
<a href='../viewserial.php?page_id=".$r['page_id']."'>";
if($r['page_foto'] != "") {
echo "<img src='../images/seriale/".$r['page_foto']."' style='margin:5px;' align='left'>";
} else {
echo "<img src='../images/brak_zdjecia.jpg' style='margin:5px;' align='left'>";
}
echo "</a><img src='../images/ico-1.jpg' style='margin:5px;' align='left'><b>Opis:</b> ".$r['page_content']."<br>
<b>Doda?:</b> <a href='".BASEDIR."profile.php?lookup=".$r['user_id']."' target='_blank'>".$r['user_name']."</a><br>
<img src='../images/ico-5.jpg' style='margin:2px;' align='left'><b>Data dodania:</b> ".showdate("longdate", $r['page_datestamp'])."</td></tr><tr><td><hr></td></tr></table>";
}
}
if($countr > $serials_per_page) echo "<div align='center' style='margin-top:5px;'>\n".makepagenav($rowstart,$serials_per_page,$countr,3, "?page_id=".$_GET['page_id']."&")."\n</div>\n";
?>
Sprawdzam na localhost u siebie w inny sposób i dzia?a, nawet powy?sze. Nie wiem gdzie masz przekombinowane.
Nie pomagam na komunikatorach oraz PW!
|
|
|
|
tubi |
Dodany dnia 09.09.2008 18:43:44
|

Przedszkolak

Postów: 34
Data rejestracji: 27.05.2007 23:47
|
A no teraz dzia?a. Zapomnia?em ?e wcze?niej mia?em troch? zmodyfikowany i wzbogacony o funkcj? pagebreak. Skasowa?em kod odpowiedzialny za to i wszystko ?miga. Dzi?ki :D
Jednak po dodaniu wi?kszej ilo?ci rekordów w bazie wykry?em b??d. Polega? ona na tym ?e wy?wietla? wszystkie strony rekordów i np. je?eli pierwszy rekord mia? id 160 to by? on widoczny dopiero na str. 8. Teraz wy?wietla jest wy?wietlany od 1 str. Jednak?e dalej wy?wietla u do?u ?e jest to strona 1 z 22 chocia? na 2 stronie ju? nic nie ma. I nie wiem jak sobie z tym poradzi?
Kod:
<?php
$serials_per_page = 20;
$rowstart = (isset($_GET['rowstart']) && isnum($_GET['rowstart']) ? $_GET['rowstart'] : 0);
$wynik = dbquery("SELECT * FROM ".$db_prefix."serial [color=red]WHERE page_cat='1'[/color] ORDER BY page_id DESC LIMIT $rowstart,$serials_per_page");
$countr = dbcount("(page_id)", "serial");
if(dbrows($wynik) != 0) {
while($r = dbarray($wynik)) {
if($r['page_cat'] == 1) {
echo "<table><tr><td height='100'>
<h4><a href='../viewserial.php?page_id=".$r['page_id']."'>".$r['page_title']."</a></h4>
<a href='../viewserial.php?page_id=".$r['page_id']."'>";
if($r['page_foto'] != "") {
echo "<img src='../images/seriale/".$r['page_foto']."' style='margin:5px;' align='left'>";
} else {
echo "<img src='../images/brak_zdjecia.jpg' style='margin:5px;' align='left'>";
}
echo "</a><img src='../images/ico-1.jpg' style='margin:5px;' align='left'><b>Opis:</b> ".$r['page_content']."<br>
<b>Doda?:</b> <a href='".BASEDIR."profile.php?lookup=".$r['user_id']."' target='_blank'>".$r['user_name']."</a><br>
<img src='../images/ico-5.jpg' style='margin:2px;' align='left'><b>Data dodania:</b> ".showdate("longdate", $r['page_datestamp'])."</td></tr><tr><td><hr></td></tr></table>";
}
}
if($countr > $serials_per_page) echo "<div align='center' style='margin-top:5px;'>\n".makepagenav($rowstart,$serials_per_page,$countr,3, "?page_id=".$_GET['page_id']."&")."\n</div>\n";
}
?>
Na czerwono to co doda?em
Dzia?anie: http://beta.relax...?page_id=2
Edytowane przez tubi dnia 11.09.2008 13:29:29
|
|
|