Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: porjowanie danych w bazie txt
Forum PHP.pl > Forum > PHP
zuro
zna ktos jakis fajny artykul o porjowaniu wpisow w ksiedze gosci w bazie txt, tylko naprawde jakis banalny i szeroko opisany, dzieki z gory !!
Nitro
Chodzi Ci o ilość wpisów wyświetlanych na stronę?
zuro
tak dokladnie, bo robie sobie taka prosta ksiege gosci, ale na razie to na jednej stronei mi wyswielta wszystkie wpisy, a ja chce ze ja bedzie powyzej 10 to zeby juz rozkladal po 10 na stronie
widziale artykul na stronie kessa ale nie a bardzo mi to wyszlo
Nitro
Spróbój tak:
[php:1:4bdc832197]<?php
$ile_postow=10;

$ksiega_array = file( 'ksiegagosci.txt' );
$wielkosc = sizeof( $ksiega_array );

if ( $_GET['start'] == NULL ) $_GET['start'] = $wielkosc;

$nr = $nr_od = $_GET['start'];
$poczatek = $wielkosc;

echo( '<br /><div align="center">' );
for ( $i=0, $wynik = ceil( $wielkosc/$ile_postow ); $i<$wynik; $i++ ) {
$n++;
if ( $_GET['start'] == $poczatek ) {
echo( " [$n] " );
}
else {
echo( "<a href='show.php?start=$poczatek'>[$n]</a> " );
}
$poczatek -= $ile_postow;
}
echo( '</div><br />' );
?>[/php:1:4bdc832197]
zuro
moglbys lekki komentarz do tego dolozyc, do jakiego pliku itp smile.gif
Nitro
Umieszczasz ten fragment kodu w pliku, który wyświetla wpisy z księgi (musisz oczywiscie poprawić nazwy plików na te, których używasz). Uzyskasz linki do poszczególnych stron, w postaci numerków. Natomiast zapomniałem o pętli wyświetlającej wynik:
[php:1:af5d6d896e]<?php
for ( $i=$nr_od-1; $i>=$nr_od-$ile_postow; $i-- ) {
if ( $i>=0 ) {
// tutaj wpisz kod wyświetlający jeden wpis
$nr--;
}
}
?>[/php:1:af5d6d896e]
zuro
w komentarzu kod wyswieltajacy jeden wpis, tzn ktory questionmark.gif

moglbys polaczyc te 2 posty, co mam dokladnie wkleic bo sie troche pogubilem, i mam tylko zmienic nazwy plikow czy jescze jakos inaczej posklejac skladnie questionmark.gif
Nitro
W Twoim przypadku plik guest.php, powinien wygladać mniej więcej tak:
[php:1:a7f2573258]<?php
echo "<center><H1>Księga Gości</H1></center><br><br>";

$ile_postow=10;

$ksiega_array = file( 'data.php' );
$wielkosc = sizeof( $ksiega_array );

if ( $_GET['start'] == NULL ) $_GET['start'] = $wielkosc;

$nr = $nr_od = $_GET['start'];
$poczatek = $wielkosc;

echo( '<br /><div align="center">' );
for ( $i=0, $wynik = ceil( $wielkosc/$ile_postow ); $i<$wynik; $i++ ) {
$n++;
if ( $_GET['start'] == $poczatek ) {
echo( " [$n] " );
}
else {
echo( "<a href=' guest.php?start=$poczatek'>[$n]</a> " );
}
$poczatek -= $ile_postow;
}
echo( '</div><br />' );

echo "<p align=right><a href=guest/form.htm>dodaj wpis</a></p>";
for ( $i=$nr_od-1; $i>=$nr_od-$ile_postow; $i-- ) {
if ( $i>=0 ) {
$data=explode ("*|*", $ksiegagosci_array[$i]);
echo "<b>Dodano:</b> $data[5]<br><b>Autor:</b> <a
href=mailto:$data[1]>$data[0]<br></a><b>Gadu gadu:</b>$data[2]
<br><b>Miejscowosc</b>$data[6]<br><b>IP: </b>$data[6]<b>Strona www: </b><a
href=$data[3]>$data[3]</a><br><br><b>Wpis: </b>$data[4]<br><hr size=1>";
}
}
?>[/php:1:a7f2573258]
Oczywiście nalożałoby jeszcze ten kod uporządkować.
zuro
wyglada na to ze chyba dobrze pozmienialem wzytko, jednak jak chce przejsc do 2 strony z wpisami to wywala ze nie ma takiego adresu.
Pierwsza strona z wpisami ma adres: http://www.kubajablonski.com/ksieggga/guest/index.php
a druga http://www.kubajablonski.com/ksieggga/gues...est.php?start=2 jednak nie wchodzi ;/
Nitro
A w jakim pliku masz procedurę do wyświetlania wpisów?
zuro
w pliku index.php mam tylko include guest.php ale wszystko jest w guest
Nitro
No to zmiań na:[php:1:51612e5ee7]<?php
echo( "<a href='index.php?start=$poczatek'>[$n]</a> " );
?>[/php:1:51612e5ee7]
zuro
aha, tylko ze index.php jest katalog wyzej ;-) hehe
bede musial to pozmienac winksmiley.jpg
zuro
wszystko lux chodzi winksmiley.jpg thx
zuro
wszystko chodzi lux, udalo mi sie to jakos zrobi, ale nie za bardzo kapuje wszystkie funkcje, am ktos moze artykul z dokladnym opisem tej funkcji, bo chcialbym to lepiej zakapowac questionmark.gif
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.