Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Paginacja strony - poprawne wyswietlanie linków
Forum PHP.pl > Forum > Przedszkole
BudrysLP
Witam mam problem z wyświetlaniem nr linków przy paginacji.
Nie wyświetlają się poprzednie nr stron i jest błąd przy linku następna strona.

Strona to pagesi.cba.pl

Kod pliku php:



<?php

$pol=mysql_connect('mysql.cba.pl','mike22','russel22');

if($pol)
{
$baza=mysql_select_db('pagesi_cba_pl');

if ($baza)
{
$zapytanie=" SELECT * FROM pracownik";
$wyniki=mysql_query($zapytanie);

$liczba_wyn=mysql_num_rows($wyniki);

echo "Liczba wyników: $liczba_wyn";
echo "</br>";

$liczba_na_str=2;

$liczba_str=$liczba_wyn/$liczba_na_str;
$liczba_str=ceil($liczba_str);

echo "Liczba stron: $liczba_str";
echo "</br>";


if(isset($_GET["str"])) $str=$_GET["str"];
else $str=1;

$pomin=($str-1)*$liczba_na_str;

$zapytanie="SELECT * FROM pracownik LIMIT $pomin,$liczba_na_str";
$wyniki=mysql_query($zapytanie);

echo "Liczba pomin: $pomin";
echo "</br>";

?>

<table border="1" bordercolor="000000" width="100%" >

<tr>
<td><?php echo "<b>ID</b>"; ?></td>
<td><?php echo "<b>Imie</b>"; ?></td>
<td><?php echo "<b>Nazwisko</b>"; ?></td>
<td><?php echo "<b>Płeć</b>"; ?></td>
<td><?php echo "<b>Nazwisko panieńskie</b>"; ?></td>
<td><?php echo "<b>E-mail</b>"; ?></td>
<td><?php echo "<b>Kod pocztowy</b>"; ?></td>
</tr>

<?php

while ($wiersz = mysql_fetch_row($wyniki))
{
echo "<tr><td>".$wiersz[0].
"</td><td>".$wiersz[1].
"</td><td>".$wiersz[2].
"</td><td>".$wiersz[3].
"</td><td>".$wiersz[4].
"</td><td>".$wiersz[5].
"</td><td>".$wiersz[6].
"</td></tr>";
}

echo "</table>";


$linki='';

if($str>1)
{
$linki=$linki.'<a href="'.$_SERVER['PHP_SELF'].
'?strona=4&str='.($str-1).'"><-</a>';
}
else
{
$linki=$linki.'<-';
}

for($i=1;$i<=$liczba_str;$i++)
{
if($str==$i)
{
$linki=$linki.''>$i;
}
else
{
$linki=$linki.'<a href="'.$_SERVER['PHP_SELF'].
'?strona=4&str='.$i.'">'.$i.'</a>';
}

}

if($str<$liczba_str)
{
$linki=$linki.'<a href="'.$_SERVER['PHP_SELF'].
'??strona=4&str='.($str+1).'">-></a>';
}
else
{
$linki=$linki.'->';
}

echo "$linki";

if($zap)

{
mysql_close($pol);
}

else
{
echo mysql_error();
}
}


else
{
echo "Nie mona polaczyc sie z baza danych";
}

}
else
{
echo "Nie mona polaczyc sie z serwerem.";
}





?>

nospor
1) Uzywaj BBCODE!
2) Naprawde musisz podawac nam swoje dane dostepowe do bazy?

3)
  1. $zapytanie=" SELECT * FROM pracownik";
  2. $wyniki=mysql_query($zapytanie);
  3. $liczba_wyn=mysql_num_rows($wyniki);


Ałć.... tak sie nie liczy liczby wszystkich rekordow. W sieci jest cala masa skryptow do stronicowania. Czemu nie przejrzysz ich i nie spojrzysz jak to sie robi poprawnie?

4) Co ma niby robic ta linijka
$linki=$linki.''>$i;
?

5) Troche nie na temat, ale pole PLEC to nie powinno byc typu TEXT, tylko np. ENUM, gdzie mozna wybrac tylko MEZCZYZNA/KOBIETA

6) Inne pola tez nie powinny byc TEXT tylko VARCHAR. Poczytaj troche o dostepnych typach, bo imie, kod pocztowy itp. to naprawde nie TEXT
kartin
  1. <tr>
  2. <td><?php echo "<b>ID</b>"; ?></td>
  3. <td><?php echo "<b>Imie</b>"; ?></td>
  4. <td><?php echo "<b>Nazwisko</b>"; ?></td>
  5. <td><?php echo "<b>Płeć</b>"; ?></td>
  6. <td><?php echo "<b>Nazwisko panieńskie</b>"; ?></td>
  7. <td><?php echo "<b>E-mail</b>"; ?></td>
  8. <td><?php echo "<b>Kod pocztowy</b>"; ?></td>
  9. </tr>
W jakim celu jest tu PHP i echo?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.