Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php] stronicowanie - jak dodać
kosmic
post
Post #1





Grupa: Zarejestrowani
Postów: 132
Pomógł: 0
Dołączył: 31.10.2007

Ostrzeżenie: (0%)
-----


Witam...

jak dodac stronicowanie do mojego skrptu, tak aby mi wyswietlało np. po 8 wyników na stronie questionmark.gif
bo wiadomo jak bedzie 100 zdjec to lipa sie bedzie przegladac galerie sad.gif

kombinuje sam cos, ale niemogedo tego dojsc sad.gif

dodam ze dopiero sie ucze, wiec troche wyrozumialosci

kod
Kod
<?php

$link = @mysql_connect('localhost','root','vertrigo') or die ('Połączenie nieudane');
mysql_select_db('galeria_zdjec') or die ('Nieudane pobranie bazy');

if (!isset($_GET['zdj']))
    {
    $zapytanie=mysql_query("SELECT * FROM galeria LIMIT 1");
    }
else
    {
    $zdj=$_GET['zdj'];
    $zapytanie=mysql_query("SELECT * FROM galeria WHERE id='$zdj'");
    }

echo '<table cellpadding="0" cellspacing="0" border="0" width="500">';
echo '<tr border="0"><td colspan="4" height="5"></td></tr>';
echo '<tr border="0">';
echo '<td colspan="4"  align="center" height=350 width=380>';

$dane = mysql_fetch_array($zapytanie);

echo '<img src=upload/'.$dane['zdjecie'].' height=340 width=380 class=foto>';
echo '</td></tr>';
echo '<tr border="0">';
echo '<td colspan="4"  align="left">';
echo '<hr size="1" width="500" color="#cccccc">';
echo '&nbsp;&nbsp;<b>'.$dane['opis'].'</b>';
echo '<br>';
echo '&nbsp;&nbsp;Dodano dnia: <b>'.$dane['datans'].'</b>';
echo '<hr size="1" width="500" color="#cccccc">';
echo '</td></tr>';
echo '<tr height="5"><td height="5"></td></tr>';

$zapytanie2 = mysql_query('SELECT * FROM galeria');
$il = mysql_num_rows($zapytanie2);
$wiersze = ceil($il/4);

for ($a=0;$a<$wiersze;$a++)
{
echo '<tr align=center>';
    $b=$a*4;
    $zapytanie="SELECT * FROM galeria LIMIT $b,4";
    $c=mysql_query($zapytanie);
    while($row=mysql_fetch_array($c))
    {
    echo '<td width=110 height=110>';
    echo '<a href=index.php?zdj='.$row['id'].' class=fotolink><img src="upload/'.$row['zdjecie'].'" border=0 width=100 height=90></a>';
    echo '</td>';
    }
echo '</tr>';
echo '<tr height="1"><td height="1"></td></tr>';
}
echo '<tr border="0">';
echo '<td colspan="4"  align="left">';
echo '<hr size="1" width="500" color="#cccccc">';
echo '</td></tr>';
echo '<tr height="5"><td height="5"></td></tr>';
echo '<tr border="0">';
echo '<td colspan="4"  align="center">';
if($page>0) echo "<a href=stronic.php?page=".($page-1).">Poprzednia</a>&nbsp;&nbsp;|"; else echo "Poprzednia&nbsp;&nbsp;|";
if($page<$podstron) echo "&nbsp;&nbsp;<a href=stronic.php?page=".($page+1).">Nastepna</a>"; else echo "&nbsp;&nbsp;Nastepna";
echo '</td></tr>';
echo '<tr height="10"><td height="10"></td></tr>';
echo '</table>';

mysql_close($link);
?>


prosze o pomoc w rozwiazaniu?
Go to the top of the page
+Quote Post
Darti
post
Post #2





Grupa: Zarejestrowani
Postów: 1 076
Pomógł: 62
Dołączył: 6.03.2005
Skąd: Wroc

Ostrzeżenie: (0%)
-----


no sorry ale troche googlowania jeszcze nikomu nie zaszkodziło...


--------------------
The answer is out there, Neo. It's looking for you. And it will find you, if you want it to.
SERVER_SOFTWARE : Apache/2.2.4 (Win32) PHP/5.2.1
MySQL Client API version : 5.0.27
Go to the top of the page
+Quote Post
kosmic
post
Post #3





Grupa: Zarejestrowani
Postów: 132
Pomógł: 0
Dołączył: 31.10.2007

Ostrzeżenie: (0%)
-----


Cytat(Darti @ 19.11.2007, 16:37:06 ) *
no sorry ale troche googlowania jeszcze nikomu nie zaszkodziło...


no sorry kolego ale wiem jak zrobic stronicowanie bo użylem goglowania...
to moj plik który zrobilem...

ale dopiero sie ucze i nie mam pojecia jak mam polaczyc to z moim plikiem, ktpory mi wyswietla zdjecie i miniatury questionmark.gif?

Kod
$link = @mysql_connect($dbhost, $dbuser, $dbpass) or die ('Nie mozna nawiazac polaczenia z baza danych');
mysql_select_db($dbname) or die ('Bledna nazwa bazy !');
$query = @mysql_query("SELECT * FROM galeria");
$num_rows = @mysql_num_rows($query);
$wszystkich = $num_rows;
$ile = "2";
$zapytanie = "SELECT * FROM galeria LIMIT ".($page*$ile).",$ile";
$wykonaj = mysql_query($zapytanie);

while($wiersz = @mysql_fetch_array($wykonaj))
    {
    echo '<img src=upload/'.$wiersz['zdjecie'].' width=100 height=100><br>';
    }
    
$podstron = ceil($wszystkich/$ile-1);

if($page>0) echo "<a href=stronic.php?page=".($page-1).">Poprzednia</a>&nbsp;&nbsp;|"; else echo "Poprzednia&nbsp;&nbsp;|";

for($i=0;$i<=$podstron;$i++)
    {
    if($i==$page) echo " [".($i+1)."] "; else echo "<a href=stronic.php?page=".($i)."> ".($i+1)." </a>";
    }

if($page<$podstron) echo "&nbsp;&nbsp;<a href=stronic.php?page=".($page+1).">Nastepna</a>"; else echo "&nbsp;&nbsp;Nastepna";

?>


dlatego prosze o pomoc questionmark.gifquestionmark.gifquestionmark.gifquestionmark.gif
Go to the top of the page
+Quote Post
Darti
post
Post #4





Grupa: Zarejestrowani
Postów: 1 076
Pomógł: 62
Dołączył: 6.03.2005
Skąd: Wroc

Ostrzeżenie: (0%)
-----


  1. <?php
  2. $link = @mysql_connect($dbhost, $dbuser, $dbpass) or die ('Nie mozna nawiazac polaczenia z baza danych');
  3. mysql_select_db($dbname) or die ('Bledna nazwa bazy !');
  4. $query = @mysql_query("SELECT * FROM galeria");
  5. $wszystkich = @mysql_num_rows($query);
  6.  
  7. $ile_na_stronie = "2";
  8. $page = $_GET['page'] ? $_GET['page'] : 0;
  9. $limit = ($page * $ile_na_stronie).','.(($page * $ile_na_stronie)+$ile_na_stronie);
  10.  
  11. $zapytanie = "SELECT * FROM galeria LIMIT {$limit}";
  12. $wykonaj = mysql_query($zapytanie);
  13.  
  14. while($wiersz = @mysql_fetch_array($wykonaj))
  15. {
  16. echo '<img src=upload/'.$wiersz['zdjecie'].' width="100" height="100"><br />';
  17. }
  18.  
  19. $podstron = ceil($wszystkich/$ile_na_stronie);
  20.  
  21. if($page>0){
  22. echo "<a href=stronic.php?page=".($page-1).">Poprzednia</a>&nbsp;&nbsp;|";
  23. } else {
  24. echo "Poprzednia&nbsp;&nbsp;|";
  25. }
  26.  
  27. for($i=0;$i<=$podstron;$i++){
  28. if($i==$page){
  29. echo " [".($i+1)."] ";
  30. } else {
  31. echo "<a href=stronic.php?page=".($i)."> ".($i+1)." </a>";
  32. }
  33. }
  34.  
  35. if($page<$podstron){
  36. echo "&nbsp;&nbsp;<a href=stronic.php?page=".($page+1).">Nastepna</a>";
  37. } else {
  38. echo "&nbsp;&nbsp;Nastepna";
  39. }
  40. ?>


--------------------
The answer is out there, Neo. It's looking for you. And it will find you, if you want it to.
SERVER_SOFTWARE : Apache/2.2.4 (Win32) PHP/5.2.1
MySQL Client API version : 5.0.27
Go to the top of the page
+Quote Post
kosmic
post
Post #5





Grupa: Zarejestrowani
Postów: 132
Pomógł: 0
Dołączył: 31.10.2007

Ostrzeżenie: (0%)
-----


Darti zrobileś normalne stronicowanie, praktycznie to samo co podałem powyżej Twoej odpowiedzi sad.gif

samo stronicowanie to nie problem, ale mi chodzi o to (pierwszy post) ze mam galerie, wyswietlam zdjecie i miniaturki z tej galeri, no i do tego dołozyc stronicowanie... kod galeri masz w pierwszym poscie exclamation.gif

chodzi o to ze jak np. bede mial 150 zdjecigaleri, to przegladanie tego jest nie wygodne gdyz trzeba na sam dól strony zjezdzacsuwakami zeby kliknac w miniaturke...

a ja chce by np. w tym pliku galeri który mam zrobic stoncowanie, tak aby wyswietlało powiedzmy 8 miniaturek exclamation.gif!

no i tu mam problemu, bo jeszcze nie znam tak php zeby sie z tym uporac... a problem tkwi w tym ze w wywsietlaniu wynikow z galeri mam zrobione zliczanie i wyswietlanie po 4 miniaturki w rzedzie.... no i nie wiem jak polaczyc to ze stronicowaniem, bo w stronicowaniu tez jest zliczanie itp... i nie moge dojsc jak to polaczyc questionmark.gif

http://www.forozanski.pl/prgal/

ktos pomoze questionmark.gif?
Go to the top of the page
+Quote Post
Darti
post
Post #6





Grupa: Zarejestrowani
Postów: 1 076
Pomógł: 62
Dołączył: 6.03.2005
Skąd: Wroc

Ostrzeżenie: (0%)
-----


U Ciebie w kodzie - zmienna $ile odpowiada za ilość wyświetlonych zdjęć, u mnie - $ile_na_stronie robi to samo, zmień z 2 na 8 i będzie 8 zdjęć na stronie

Ten post edytował Darti 21.11.2007, 02:24:55


--------------------
The answer is out there, Neo. It's looking for you. And it will find you, if you want it to.
SERVER_SOFTWARE : Apache/2.2.4 (Win32) PHP/5.2.1
MySQL Client API version : 5.0.27
Go to the top of the page
+Quote Post
lukash82
post
Post #7





Grupa: Zarejestrowani
Postów: 320
Pomógł: 2
Dołączył: 17.03.2006
Skąd: Siemianowice

Ostrzeżenie: (0%)
-----


Witam. Wlasnie dzisiaj sie meczylem tez ze stronicowaniem wykorzystujac skrypt napisany przez Darti. Myslalem, myslalem i nic nie wymyslilem póki nie pomogl mi nospor. A wiec skrypcik jest w 100% sprawny gdy zmienimy dwie linijki w nim:
  1. <?php
  2. for($i=0;$i<=$podstron;$i++)
  3. ?>

na
  1. <?php
  2. for($i=0;$i<$podstron;$i++)
  3. ?>

oraz
  1. <?php
  2. if($page<$podstron){
  3. ?>

na cos takiego
  1. <?php
  2. if($page<$podstron-1){
  3. ?>

Mam nadzieje, ze Darti nie bedzie zly za te male poprawki i ze komus teraz to sie przyda jeszcze bardziej. Pozdrawiam, Łukasz.
Go to the top of the page
+Quote Post
Darti
post
Post #8





Grupa: Zarejestrowani
Postów: 1 076
Pomógł: 62
Dołączył: 6.03.2005
Skąd: Wroc

Ostrzeżenie: (0%)
-----


Darti nie będzie zły smile.gif


--------------------
The answer is out there, Neo. It's looking for you. And it will find you, if you want it to.
SERVER_SOFTWARE : Apache/2.2.4 (Win32) PHP/5.2.1
MySQL Client API version : 5.0.27
Go to the top of the page
+Quote Post
kosmic
post
Post #9





Grupa: Zarejestrowani
Postów: 132
Pomógł: 0
Dołączył: 31.10.2007

Ostrzeżenie: (0%)
-----


no ok... ale to jest samo stronicowanie, które powiedzmy ze wiem jak zrobic i mam...

lecz problem lezy w tym ze trzeba to polaczyc z moim skryptem, ktory mi wyswietla miniatru exclamation.gif

a dokładnie ma byc tak ze miniatury sa wyswietlane powiedzmy w 3 rzedach po 4 sztuki (czyli 12 miniatur) i jak jest wiecej zdjec to nastepne maja byc na kolejnej stronie - mam nadzieje ze jasno napisałem

moj skrypt ktory tworzy mi rzedy miniatur jes w pierwszym poscie, no i nie wiem jak dodac do tego stronicowanie, bo tam juz jest liczenie zdjec w celu podziału wyswietlania na rzedy..

dlatego mam problum...tu liczenie i podział na rzedy a w stronicowanieu tez liczenie i podział na stony

njie wiem jak to polaczyc sad.gif

please help me.... bo mnie trafia sad.gif
Go to the top of the page
+Quote Post
Darti
post
Post #10





Grupa: Zarejestrowani
Postów: 1 076
Pomógł: 62
Dołączył: 6.03.2005
Skąd: Wroc

Ostrzeżenie: (0%)
-----


chyba wypadnie popełnić jakiś art o stronicowaniu i limitach z bazy ...


--------------------
The answer is out there, Neo. It's looking for you. And it will find you, if you want it to.
SERVER_SOFTWARE : Apache/2.2.4 (Win32) PHP/5.2.1
MySQL Client API version : 5.0.27
Go to the top of the page
+Quote Post
Teamon
post
Post #11





Grupa: Zarejestrowani
Postów: 45
Pomógł: 0
Dołączył: 18.09.2006

Ostrzeżenie: (0%)
-----


a moze zwykle stronicowanie liniowo + css: float?


--------------------
Blog - programowanie, webdesign, Symfony
Go to the top of the page
+Quote Post
dadexix
post
Post #12





Grupa: Zarejestrowani
Postów: 439
Pomógł: 21
Dołączył: 28.06.2007
Skąd: Bielsko-Biała

Ostrzeżenie: (0%)
-----


było to gdzieś....
masz np.
  1. <?php
  2. while($wiersz = @mysql_fetch_array($wykonaj))
  3. {
  4. echo '<img src=upload/'.$wiersz['zdjecie'].' width="100" height="100"><br />';
  5. }
  6. ?>

to się pokazuje zawsze na kazdy obrazek
daj sobie
  1. <?php
  2. echo "<table><tr>";
  3. $na_rzad = 5; //ile zdjec na rzad
  4. $start=0
  5. while($wiersz = @mysql_fetch_array($wykonaj))
  6. {
  7. $start++
  8. echo '<td><img src=upload/'.$wiersz['zdjecie'].' width="100" height="100"></td>';
  9. if($start <= $na_rzad)
  10. {
  11. echo "</tr><tr>";
  12. $start=0 //tu mogłem pomylić < z > ale ma być "jeśli $start większe lub równe $na rzad"
  13. } 
  14.  
  15. }
  16. ?>


PS. nie wiem czy napewno o to ,Ci chodzi:P

Ten post edytował dadexix 22.11.2007, 17:22:35


--------------------
"Na przykład zmiennej $jestem_najlepszy przypisujemy wartość logiczną TRUE"
Ja: użyj funkcji[...]
Grins: mów normalnie do mnie a nie po polsku
Ja: normalnie to znaczy jak?
Grins: No w PHP... inaczej mój parser ledwo kuma:)
Go to the top of the page
+Quote Post
polak89
post
Post #13





Grupa: Zarejestrowani
Postów: 20
Pomógł: 0
Dołączył: 11.11.2007

Ostrzeżenie: (10%)
X----


Sorki ale w skryptcie podanym przez Darti prawie wszystko gra tylko nastepne podstrony wyswietlaja wiecej rekordow niz jest przekazanych w zmiennej $ile_na_stronie. Pierwsza i ostatnia strona jest w porzadku. Czy ktos wie jak temu zaradzic?


  1. <?php
  2. require_once 'conn.php';
  3.  
  4.  
  5. $query = mysql_query("SELECT * FROM newsletter");
  6. $wszystkich = mysql_num_rows($query);
  7.  
  8. $ile_na_stronie = "4";
  9. $page = $_GET['page'] ? $_GET['page'] : 0;
  10. $limit = ($page * $ile_na_stronie).','.(($page * $ile_na_stronie)+$ile_na_stronie);
  11.  
  12. $zapytanie = "SELECT * FROM newsletter LIMIT {$limit}";
  13. $wykonaj = mysql_query($zapytanie);
  14.  
  15. $arrLocale = array( "pl_PL", "polish_pol" );
  16. setlocale( LC_ALL, $arrLocale );
  17.  
  18.  
  19. while ($row = mysql_fetch_array($wykonaj)) {
  20. echo "<span class=\"date\">" .
  21.  date('j', strtotime($row['date'])) . strftime(' %B %Y', strtotime($row['date'])) .
  22.  "</span>\n";
  23. echo "<p class=\"body\">\n" .
  24.  ucfirst(nl2br($row['body'])) .
  25.  "\n</p>\n";
  26. echo "<p class=\"action\">\n" .
  27. "<a href=\"compose.php?a=edit&id=" . $row['news_id'] . "\">edytuj</a>\n".
  28. "|\n" .
  29. "<a href=\"transactscript.php?action=delete&id=" . $row['news_id'] . "\">usuń</a>\n</p>\n";
  30.  
  31.  
  32.  
  33. }
  34.  
  35.  
  36. $podstron = ceil($wszystkich/$ile_na_stronie);
  37.  
  38. if($page>0){
  39. echo "<a href=stronic.php?page=".($page-1).">Poprzednia</a>&nbsp;&nbsp;|";
  40. } else {
  41. echo "Poprzednia&nbsp;&nbsp;|";
  42. }
  43.  
  44. for($i=0;$i<$podstron;$i++){
  45. if($i==$page){
  46. echo " [".($i+1)."] ";
  47. } else {
  48. echo "<a href=stronic.php?page=".($i)."> ".($i+1)." </a>";
  49. }
  50. }
  51.  
  52. if($page<$podstron-1){
  53. echo "&nbsp;&nbsp;<a href=stronic.php?page=".($page+1).">Nastepna</a>";
  54. } else {
  55. echo "&nbsp;&nbsp;Nastepna";
  56. }
  57. ?>
Go to the top of the page
+Quote Post
dadexix
post
Post #14





Grupa: Zarejestrowani
Postów: 439
Pomógł: 21
Dołączył: 28.06.2007
Skąd: Bielsko-Biała

Ostrzeżenie: (0%)
-----


a jakie jest "przyśpieszenie" rekordów? tj. o ile więcej jest na następnych podstronach?


--------------------
"Na przykład zmiennej $jestem_najlepszy przypisujemy wartość logiczną TRUE"
Ja: użyj funkcji[...]
Grins: mów normalnie do mnie a nie po polsku
Ja: normalnie to znaczy jak?
Grins: No w PHP... inaczej mój parser ledwo kuma:)
Go to the top of the page
+Quote Post
Darti
post
Post #15





Grupa: Zarejestrowani
Postów: 1 076
Pomógł: 62
Dołączył: 6.03.2005
Skąd: Wroc

Ostrzeżenie: (0%)
-----


w wierszu 10 (zapomniałem że ma być limit 'od_miejsca' , 'ile_rekordów'

  1. <?php
  2. $limit = ($page * $ile_na_stronie).','.$ile_na_stronie;
  3. ?>


--------------------
The answer is out there, Neo. It's looking for you. And it will find you, if you want it to.
SERVER_SOFTWARE : Apache/2.2.4 (Win32) PHP/5.2.1
MySQL Client API version : 5.0.27
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 04:24