![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 35 Pomógł: 0 Dołączył: 6.01.2004 Ostrzeżenie: (0%) ![]() ![]() |
Stworzyłem taki oto skrypt do stronicowania który wyświetla takie coś:
" Dane ....... ....... Strony 1|2|3|.... " [php:1:87018243bd]<?php global $db, $prefix; // Ile artyku³ów ma ukzywaæ siê na jedn¹ porcjê / // stronê? $_ARTICLES['max_articles'] = 10; // Czy pokazywaæ link 'Nastêpna strona' oraz link // 'Poprzednia strona'? // TRUE = Tak; FALSE = Nie; $_ARTICLES['optional_links'] = TRUE; // Sortowanie artyku³ów // ASC = Rosn¹co; DESC = Malej¹co; $_ARTICLES['order'] = time; // Sortowanie artyku³ów // ASC = Rosn¹co; DESC = Malej¹co; $_ARTICLES['order2'] = DESC; /* * Dzia³anie */ // Je¿eli nie mamy parametru 'page' w adresie to wyœwietlamy // pierwsz¹ stronê $page = ( IsSet($_GET['page']) ) ? $_GET['page'] : 0; // Je¿eli nie mamy parametru 'order' w adresie to sortujemy // artyku³y wed³ug podanej w konfiguraji (patrz wy¿ej) // kolejnoœci $sort = ( IsSet($_GET['order']) ) ? $_GET['order'] : $_ARTICLES['order']; // Je¿eli nie mamy parametru 'order' w adresie to sortujemy // artyku³y wed³ug podanej w konfiguraji (patrz wy¿ej) // kolejnoœci $sort2 = ( IsSet($_GET['order2']) ) ? $_GET['order2'] : $_ARTICLES['order2']; // Obliczanie - Któr¹ stronê wyœwietliæ? $from = ( $page * $_ARTICLES['max_articles'] ); // Kreujemy zapytanie 'sql', które bêdzie wyci¹ga³o artyku³y // z tabeli 'artykuly' // Za pomoc¹ kluzuli LIMIT wyci¹gamy kolejno 'max_articles' // artyku³ów zaczynaj¹c od rekordu o ID 'from' $sql = "SELECT * FROM ".$prefix."_stories ORDER BY $sort $sort2 LIMIT $from, $_ARTICLES[max_articles]"; // Wynonujemy zapytanie SQL, ale je¿eli siê nie powiedzie to // wyœwietlamy stosowny komunikat o b³êdzie if ( !($result = $db->sql_query($sql)) ) { die('B³¹d MySQL : <b>' . mysql_error() . '</b><br />' . 'Wyst¹pi³y b³êdy podczas wyci¹gania danych o artyku³ach'); } // Za pomoc¹ pêtli 'while' wyœwietlamy wynik zapytania 'r' echo "<TABLE border= CELLSPACING=0 WIDTH=100% ALIGN=center>"; echo "<tr><td><center><b><A HREF="modules.php?name=Kategorie&page=$i&order=title&order2=ASC">"._TOPIC."</A></b></td>"; echo "<td><center><b><A HREF="modules.php?name=Kategorie&page=$i&order=time&order2=DESC">"._TIME."</A></b></td>"; echo "<td><center><b><A HREF="modules.php?name=Kategorie&page=$i&order=informant&order2=ASC">"._DODAL."</A></b></td>"; while ($row = $db->sql_fetchrow($result)) { echo ("<tr>"); echo ("<td>"); echo '<b><A HREF="modules.php?name=News&file=article&sid=' .$row['sid'] . '">'. $row['title'] . '</A></b>'; echo ("</td>"); echo ("<td>"); $abc = $row[time]; echo substr($abc, 0, 10); echo ("</td>"); echo ("<td>"); echo $row['informant']; echo ("</td>"); echo '</tr>'; } echo ('</table>'); // Zliczamy wszystkie artyku³y, które znajduj¹ siê w naszej // tabeli za pomoc¹ funkcji COUNT() w jêzyku SQL $result = mysql_query("SELECT COUNT(*)FROM ".$prefix."_stories"); list($articles) = mysql_fetch_row($result); // Poprzez podzielenie iloœci stron przez iloœæ artyku³ów // wyœwietlanych na jedn¹ stronê ('max_articles') otrzymamy // iloœæ wszystkich stron $all_pages = ( round($articles / $_ARTICLES['max_articles'])); // Je¿eli 'optional_links' = TRUE to wyœwietlamy link // 'Poprzednia strona', która powstaje poprzez odjêcie // jeden od iloœci stron $page_prev = ( $page - 1 ); if ( !($page_prev < 0) && $_ARTICLES['optional_links'] == TRUE ) { echo '<A HREF="modules.php?name=Kategorie&page=' . $page_prev . '&order=' . $sort . '&order2='.$sort2.'">' . '<< Poprzednia strona</A> [ '; } // Za pomoc¹ pêtli 'for' wyœwietlamy numerki oraz odnoœniki // do wszystkich stron. Np. gdy 'all_pages' jest równe 4 to // zobaczysz : // Pierwsza | 2 | 3 | Ostatnia for ( $i = 0, $t = 1, $tt = 1; $i <= $all_pages; $i++, $t++, $tt++ ) { $spacer = $i == $all_pages ? ' ' : ' | '; if ( $i == 0 ) { $t = '1'; } else { $t = $tt; } if ( $i == $page ) { echo $t . $spacer; } else { echo '<A HREF="modules.php?name=Kategorie&page=' . $i . '&order=' . $sort . '&order2='.$sort2.'">' . $t . '</A>' . $spacer; } } // Je¿eli 'optional_links' = TRUE to wyœwietlamy link // 'Nastêpna strona', która powstaje poprzez dodanie // jeden do iloœci stron $page_next = ( $page + 1 ); if ( !($page_next > $all_pages) && $_ARTICLES['optional_links'] == TRUE ) { echo '] <A HREF="modules.php?name=Kategorie&page=' . $page_next . '&order=' . $sort . '&order2='.$sort2.'">' . 'Nastêpna strona >></A>'; } else { echo ']'; } ?>[/php:1:87018243bd] U mnie na domowym serverze jest wszystko ok ale jak załaduje go na server w necie to pokazuje się takie coś Dane ....... ....... A tam gdzie powinny być numery stron jest bład: "Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource in /home/warrior/public_html/modules/Kategorie/index.php on line 92" Co jest nie tak w tym kodzie ![]() ![]() |
|
|
![]()
Post
#2
|
|
![]() Grupa: Przyjaciele php.pl Postów: 120 Pomógł: 0 Dołączył: 29.11.2003 Skąd: Tarnów Ostrzeżenie: (0%) ![]() ![]() |
jak dla mnie to brakuje tam polaczenia z baza...
sprawdz czy napewno w skrypt laczy sie z baza i czy taka istnieje |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 35 Pomógł: 0 Dołączył: 6.01.2004 Ostrzeżenie: (0%) ![]() ![]() |
Istnieje i łączy się bo przecież napisałem że wyświetla dane:
" title1 title2 title3 title4 Brak numerów stron i ten błąd" Na domowym php mam taką samą bazę i działa a na tym servie nie chce (wszytskie inne skrypty działają na tym servie w necie) |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 581 Pomógł: 0 Dołączył: 21.07.2003 Skąd: Jasło Ostrzeżenie: (0%) ![]() ![]() |
Błąd w lini 92 mianowicie to chyba ten kawałek kodu:
[php:1:a78e864209]<?php // Zliczamy wszystkie artyku³y, które znajduj¹ siê w naszej // tabeli za pomoc¹ funkcji COUNT() w jêzyku SQL $result = mysql_query("SELECT COUNT(*)FROM ".$prefix."_stories"); list($articles) = mysql_fetch_row($result); ?>[/php:1:a78e864209] tylko nierozumie tego list($articles) = mysql_fetch_row($result); :wink: -------------------- „Człowiek jest wielki nie przez to, co posiada, lecz przez to, kim jest;
nie przez to, co ma, lecz przez to, czym dzieli się z innymi.” Jan Paweł II |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 35 Pomógł: 0 Dołączył: 6.01.2004 Ostrzeżenie: (0%) ![]() ![]() |
Już sobie poradziłem, zamieniłęm:
[php:1:6f77c144bd]<?php $result = mysql_query("SELECT COUNT(*)FROM ".$prefix."_stories"); list($articles) = mysql_fetch_row($result); ?>[/php:1:6f77c144bd] na [php:1:6f77c144bd]<?php $result2 = mysql_query("SELECT COUNT(*)FROM ".$prefix."_stories", $dbi); list($articles) = sql_fetch_row($result2, $dbi); ?>[/php:1:6f77c144bd] Teraz mam drugi problem ten skrypt ma taką postać: " title1 title2 title3 ...... Strony 1|2|3... " Jak zrobić żeby to miało taką postać " Strony 1|2|3... title1 title2 title3 ...... Strony 1|2|3... " Czyli żeby strony były na górze i dole ? |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 156 Pomógł: 15 Dołączył: 13.09.2003 Skąd: London Ostrzeżenie: (0%) ![]() ![]() |
Powinno dzialac:
[php:1:f25c53dae9]<?php global $db, $prefix; // Ile artyku³ów ma ukzywaæ siê na jedn¹ porcjê / // stronê? $_ARTICLES['max_articles'] = 10; // Czy pokazywaæ link 'Nastêpna strona' oraz link // 'Poprzednia strona'? // TRUE = Tak; FALSE = Nie; $_ARTICLES['optional_links'] = TRUE; // Sortowanie artyku³ów // ASC = Rosn¹co; DESC = Malej¹co; $_ARTICLES['order'] = time; // Sortowanie artyku³ów // ASC = Rosn¹co; DESC = Malej¹co; $_ARTICLES['order2'] = DESC; /* * Dzia³anie */ // Je¿eli nie mamy parametru 'page' w adresie to wyœwietlamy // pierwsz¹ stronê $page = ( IsSet($_GET['page']) ) ? $_GET['page'] : 0; // Je¿eli nie mamy parametru 'order' w adresie to sortujemy // artyku³y wed³ug podanej w konfiguraji (patrz wy¿ej) // kolejnoœci $sort = ( IsSet($_GET['order']) ) ? $_GET['order'] : $_ARTICLES['order']; // Je¿eli nie mamy parametru 'order' w adresie to sortujemy // artyku³y wed³ug podanej w konfiguraji (patrz wy¿ej) // kolejnoœci $sort2 = ( IsSet($_GET['order2']) ) ? $_GET['order2'] : $_ARTICLES['order2']; // Obliczanie - Któr¹ stronê wyœwietliæ? $from = ( $page * $_ARTICLES['max_articles'] ); // Kreujemy zapytanie 'sql', które bêdzie wyci¹ga³o artyku³y // z tabeli 'artykuly' // Za pomoc¹ kluzuli LIMIT wyci¹gamy kolejno 'max_articles' // artyku³ów zaczynaj¹c od rekordu o ID 'from' $sql = "SELECT * FROM ".$prefix."_stories ORDER BY $sort $sort2 LIMIT $from, $_ARTICLES[max_articles]"; // Wynonujemy zapytanie SQL, ale je¿eli siê nie powiedzie to // wyœwietlamy stosowny komunikat o b³êdzie if ( !($result = $db->sql_query($sql)) ) { die('B³¹d MySQL : <b>' . mysql_error() . '</b><br />' . 'Wyst¹pi³y b³êdy podczas wyci¹gania danych o artyku³ach'); } // Za pomoc¹ pêtli 'while' wyœwietlamy wynik zapytania 'r' while ($row = $db->sql_fetchrow($result)) { $abc = substr($row[time], 0, 10); $wynik .= "<tr><td><b><A HREF='modules.php?name=News&file=article&sid=" .$row['sid'] . "'>". $row['title'] . "</A></b></td><td>" . $abc . "</td><td>" . $row['informant'] . "</td></tr>"; } // Zliczamy wszystkie artyku³y, które znajduj¹ siê w naszej // tabeli za pomoc¹ funkcji COUNT() w jêzyku SQL $result = mysql_query("SELECT COUNT(*)FROM ".$prefix."_stories"); list($articles) = mysql_fetch_row($result); // Poprzez podzielenie iloœci stron przez iloœæ artyku³ów // wyœwietlanych na jedn¹ stronê ('max_articles') otrzymamy // iloœæ wszystkich stron $all_pages = ( round($articles / $_ARTICLES['max_articles'])); // Je¿eli 'optional_links' = TRUE to wyœwietlamy link // 'Poprzednia strona', która powstaje poprzez odjêcie // jeden od iloœci stron $page_prev = ( $page - 1 ); if ( !($page_prev < 0) && $_ARTICLES['optional_links'] == TRUE ) { $page_previous = '<A HREF="modules.php?name=Kategorie&page=' . $page_prev . '&order=' . $sort . '&order2='.$sort2.'">' . '<< Poprzednia strona</A> [ '; } // Za pomoc¹ pêtli 'for' wyœwietlamy numerki oraz odnoœniki // do wszystkich stron. Np. gdy 'all_pages' jest równe 4 to // zobaczysz : // Pierwsza | 2 | 3 | Ostatnia for ( $i = 0, $t = 1, $tt = 1; $i <= $all_pages; $i++, $t++, $tt++ ) { $spacer = $i == $all_pages ? ' ' : ' | '; if ( $i == 0 ) { $t = '1'; } else { $t = $tt; } if ( $i == $page ) { echo $t . $spacer; } else { $page_numbers .= '<A HREF="modules.php?name=Kategorie&page=' . $i . '&order=' . $sort . '&order2='.$sort2.'">' . $t . '</A>' . $spacer; } } // Je¿eli 'optional_links' = TRUE to wyœwietlamy link // 'Nastêpna strona', która powstaje poprzez dodanie // jeden do iloœci stron $page_next = ( $page + 1 ); if ( !($page_next > $all_pages) && $_ARTICLES['optional_links'] == TRUE ) { $page_next = '] <A HREF="modules.php?name=Kategorie&page=' . $page_next . '&order=' . $sort . '&order2='.$sort2.'">' . 'Nastêpna strona >></A>'; } else { $page_next = ']'; } $pages = $page_previous . $page_numbers . $page_next; echo $pages; echo "<TABLE border= CELLSPACING=0 WIDTH=100% ALIGN=center>"; echo "<tr><td><center><b><A HREF="modules.php?name=Kategorie&page=$i&order=title&order2=ASC">" . _TOPIC . "</A></b ></td>"; echo "<td><center><b><A HREF="modules.php?name=Kategorie&page=$i&order=time&order2=DESC">" . _TIME . "</A></b> </td>"; echo "<td><center><b><A HREF="modules.php?name=Kategorie&page=$i&order=informant&order2=ASC">" . _DODAL . "</A ></b></td>" . $wynik . "</table>"; echo $pages; ?>[/php:1:f25c53dae9] |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 35 Pomógł: 0 Dołączył: 6.01.2004 Ostrzeżenie: (0%) ![]() ![]() |
Dzięki działa
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 35 Pomógł: 0 Dołączył: 6.01.2004 Ostrzeżenie: (0%) ![]() ![]() |
Jednak jest mały problem :? stronę bieżąca w stronicowaniu (tą na której się jest obecnei wyświelta na samym początku:
Powinno być tak [1][2][3][4] (3 strona bieżąca) a jest tak: [3] [1][2][4] ..... :?: |
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 156 Pomógł: 15 Dołączył: 13.09.2003 Skąd: London Ostrzeżenie: (0%) ![]() ![]() |
To powinno byc juz ok...
[php:1:ad0d8dcf56]<?php global $db, $prefix; // Ile artyku³ów ma ukzywaæ siê na jedn¹ porcjê / // stronê? $_ARTICLES['max_articles'] = 10; // Czy pokazywaæ link 'Nastêpna strona' oraz link // 'Poprzednia strona'? // TRUE = Tak; FALSE = Nie; $_ARTICLES['optional_links'] = TRUE; // Sortowanie artyku³ów // ASC = Rosn¹co; DESC = Malej¹co; $_ARTICLES['order'] = time; // Sortowanie artyku³ów // ASC = Rosn¹co; DESC = Malej¹co; $_ARTICLES['order2'] = DESC; /* * Dzia³anie */ // Je¿eli nie mamy parametru 'page' w adresie to wyœwietlamy // pierwsz¹ stronê $page = ( IsSet($_GET['page']) ) ? $_GET['page'] : 0; // Je¿eli nie mamy parametru 'order' w adresie to sortujemy // artyku³y wed³ug podanej w konfiguraji (patrz wy¿ej) // kolejnoœci $sort = ( IsSet($_GET['order']) ) ? $_GET['order'] : $_ARTICLES['order']; // Je¿eli nie mamy parametru 'order' w adresie to sortujemy // artyku³y wed³ug podanej w konfiguraji (patrz wy¿ej) // kolejnoœci $sort2 = ( IsSet($_GET['order2']) ) ? $_GET['order2'] : $_ARTICLES['order2']; // Obliczanie - Któr¹ stronê wyœwietliæ? $from = ( $page * $_ARTICLES['max_articles'] ); // Kreujemy zapytanie 'sql', które bêdzie wyci¹ga³o artyku³y // z tabeli 'artykuly' // Za pomoc¹ kluzuli LIMIT wyci¹gamy kolejno 'max_articles' // artyku³ów zaczynaj¹c od rekordu o ID 'from' $sql = "SELECT * FROM ".$prefix."_stories ORDER BY $sort $sort2 LIMIT $from, $_ARTICLES[max_articles]"; // Wynonujemy zapytanie SQL, ale je¿eli siê nie powiedzie to // wyœwietlamy stosowny komunikat o b³êdzie if ( !($result = $db->sql_query($sql)) ) { die('B³¹d MySQL : <b>' . mysql_error() . '</b><br />' . 'Wyst¹pi³y b³êdy podczas wyci¹gania danych o artyku³ach'); } // Za pomoc¹ pêtli 'while' wyœwietlamy wynik zapytania 'r' while ($row = $db->sql_fetchrow($result)) { $abc = substr($row[time], 0, 10); $wynik .= "<tr><td><b><A HREF='modules.php?name=News&file=article&sid=" .$row['sid'] . "'>". $row['title'] . "</A></b></td><td>" . $abc . "</td><td>" . $row['informant'] . "</td></tr>"; } // Zliczamy wszystkie artyku³y, które znajduj¹ siê w naszej // tabeli za pomoc¹ funkcji COUNT() w jêzyku SQL $result = mysql_query("SELECT COUNT(*)FROM ".$prefix."_stories"); list($articles) = mysql_fetch_row($result); // Poprzez podzielenie iloœci stron przez iloœæ artyku³ów // wyœwietlanych na jedn¹ stronê ('max_articles') otrzymamy // iloœæ wszystkich stron $all_pages = ( round($articles / $_ARTICLES['max_articles'])); // Je¿eli 'optional_links' = TRUE to wyœwietlamy link // 'Poprzednia strona', która powstaje poprzez odjêcie // jeden od iloœci stron $page_prev = ( $page - 1 ); if ( !($page_prev < 0) && $_ARTICLES['optional_links'] == TRUE ) { $page_previous = '<A HREF="modules.php?name=Kategorie&page=' . $page_prev . '&order=' . $sort . '&order2='.$sort2.'">' . '<< Poprzednia strona</A> [ '; } // Za pomoc¹ pêtli 'for' wyœwietlamy numerki oraz odnoœniki // do wszystkich stron. Np. gdy 'all_pages' jest równe 4 to // zobaczysz : // Pierwsza | 2 | 3 | Ostatnia for ( $i = 0, $t = 1, $tt = 1; $i <= $all_pages; $i++, $t++, $tt++ ) { $spacer = $i == $all_pages ? ' ' : ' | '; if ( $i == 0 ) { $t = '1'; } else { $t = $tt; } if ( $i == $page ) { $page_numbers .= $t . $spacer; } else { $page_numbers .= '<A HREF="modules.php?name=Kategorie&page=' . $i . '&order=' . $sort . '&order2='.$sort2.'">' . $t . '</A>' . $spacer; } } // Je¿eli 'optional_links' = TRUE to wyœwietlamy link // 'Nastêpna strona', która powstaje poprzez dodanie // jeden do iloœci stron $page_next = ( $page + 1 ); if ( !($page_next > $all_pages) && $_ARTICLES['optional_links'] == TRUE ) { $page_next = '] <A HREF="modules.php?name=Kategorie&page=' . $page_next . '&order=' . $sort . '&order2='.$sort2.'">' . 'Nastêpna strona >></A>'; } else { $page_next = ']'; } $pages = $page_previous . $page_numbers . $page_next; echo $pages; echo "<TABLE border= CELLSPACING=0 WIDTH=100% ALIGN=center>"; echo "<tr><td><center><b><A HREF="modules.php?name=Kategorie&page=$i&order=title&order2=ASC">" . _TOPIC . "</A></b ></td>"; echo "<td><center><b><A HREF="modules.php?name=Kategorie&page=$i&order=time&order2=DESC">" . _TIME . "</A></b> </td>"; echo "<td><center><b><A HREF="modules.php?name=Kategorie&page=$i&order=informant&order2=ASC">" . _DODAL . "</A ></b></td>" . $wynik . "</table>"; echo $pages; ?>[/php:1:ad0d8dcf56] |
|
|
![]()
Post
#10
|
||
![]() Grupa: Zarejestrowani Postów: 68 Pomógł: 0 Dołączył: 13.01.2004 Skąd: Poznań Ostrzeżenie: (10%) ![]() ![]() |
A ja mam pytanko do tego skryptu. Jak dodać coś takiego co będzie pokazywało numery przy każdym wyświetlanym wierszu. Ale tak jak jest alfabetycznie np.
strona [1]: 1.Ala 2.Bubek 3.Cichy 4.Daras 5.Ela 6.Franek 7.Geronimo 8.Hamurabi 9.Inożbik 10.Jola strona[2]: 11.KRC 12.Lolek 13.Marcin 14.Natashqa 15.Olek 16.Piter ... itd. -------------------- |
|
![]()
Post
#11
|
|
![]() Grupa: Przyjaciele php.pl Postów: 2 712 Pomógł: 23 Dołączył: 27.10.2003 Skąd: z kontowni Ostrzeżenie: (0%) ![]() ![]() |
[php:1:1dbe1cd6b2]<?php
for($i = 1; $i <= $ilosc_wierszy_na_stronie; $i++) { $nr_wiersza = ($nr_strony - 1) * $ilosc_wierszy_na_stronie + $i; } ?>[/php:1:1dbe1cd6b2] -------------------- "Coś się kończy, coś się zaczyna." Andrzej Sapkowski
|
|
|
![]()
Post
#12
|
||
![]() Grupa: Zarejestrowani Postów: 68 Pomógł: 0 Dołączył: 13.01.2004 Skąd: Poznań Ostrzeżenie: (10%) ![]() ![]() |
jak by to wyglądało w połączeniu z tym skryptem ?
-------------------- |
|
![]() ![]() |
![]() |
Aktualny czas: 19.08.2025 - 09:57 |