Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Idż do strony...
Forum PHP.pl > Forum > PHP
Seth
Potrzebuje skryptu wyswietlajacego ilosc stron wyniku.
Tzn. np. SQL zwraca mi 100 rekordow przy czym tylko po 10 wypisuje.
Tak wiec potrzebuje index odsylaczy do stron z nastepnymi wynikami.

Plz help smile.gif
Mistycus
Kod
$ilosc_rekordów=/*tu chyba wiesz co przypisać*/;

$ilosc_stron=ceil($ilosc_rekordów/10);

Ze stworzeniem indexu stron chyba już sobie poradzisz tongue.gif
castor
rzecz jaka mi przyszla do glowy to jesli wyciagasz cos z bazy i otrzymujesz 100 rekordow to masz je w tablicy wiec mozesz tak:

Kod
<?php

$tab= // widomo jakas tablica:) wynik bazy

if(!$nr){

   $nr=10; //ilosc wyswietlen

   $j=0;

}

for($i=$j;$i<$nr;$i++){

echo "$tab[$i]<br>n";

}

$j=$nr;

$nr=$nr+10;

echo "<a href="$PHP_SELF?nr=$nr&j=$j">dalsze wpisy</a>";

?>


to taki tylko jeden prosty pomysl jak to mozna rozwizac :wink:
Mistycus
Czemu Castor tak kombinujesz :?: Długość tablicy można sprawdzić przez count($tablica); :wink:
castor
Cytat
Potrzebuje skryptu wyswietlajacego ilosc stron wyniku.
Tzn. np. SQL zwraca mi 100 rekordow przy czym tylko po 10 wypisuje.
Tak wiec potrzebuje index odsylaczy do stron z nastepnymi wynikami.


Ooops zle cie zrozumialem :oops:
teraz to ja juz nie wiem o co ci chodzi??
moze o cos takiego?


Kod
<?php

$tab=// tu wynik bazy

if(!$s){

  $s=0;

  $k=10;

}

if($s){

  $s--;

  $k--;

}

for($i=$s;$i<$k;$i++){

echo "$tab[$i]<br>n";

}

$ile=count($tab);

$ile_linkow=ceil($ile/10);

$od=1;

for($i=0;$i<$ile_linkow;$i++){

  $do=$od+9;

  echo "<a href="$PHP_SELF?s=$od&k=$do">wpisy $od do $do </a><br>n";

  $od+=10;

}

?>


dopracuj to smile.gif
castor
Cytat
Czemu Castor tak kombinujesz :?: Długość tablicy można sprawdzić przez count($tablica); :wink:


pobaw sie skryptem to bedziesz wiedzial :wink:

wsadz w
Kod
$tab=file("jakis_plik_z_wieloma_liniami.txt");


i zobaczysz :wink:
castor
kombinuje bo mi sie nudzi a Sethowi sie nie chce biggrin.gif

:!: Oczywiscie te skrypciki tak jebnalem i trzeba je zoptymalizowac do swoich potrzeb i ulepszyc :!:
Seth
Chodzilo mi o cos takiego jak jest np na forum tzn.:

Idz do strony 1 2 3 4 5 itd.

oczywiscie kazda liczba jest odnosnikiem do tej samej strony tylko z innymi parametrami.

To tak ogolnie mialo wygladac rolleyes.gif winksmiley.jpg
Seth
Cytat
Kod
$tab=file($plik);

:?:
A po co ta funkcja file() ?

Cytat
dopracuj to smile.gif

smile.gif gdyby mi sie tylko chcialo winksmiley.jpg winksmiley.jpg

Ale tak na powaznie to moze ktos wie w ktorym miejscu jest ta funkcja w phpBB (tzn w jakim pliku).
Mistycus
Czy Ty naprawdę nie potrafisz sobie z tym poradzić :?:

Pczekaj kilka minut to Ci napiszę ten skrypcik w całości :!:
Seth
Poczekam 8)
castor
Cytat
Chodzilo mi o cos takiego jak jest np na forum tzn.:

Idz do strony 1 2 3 4 5 itd.

oczywiscie kazda liczba jest odnosnikiem do tej samej strony tylko z innymi parametrami.

To tak ogolnie mialo wygladac rolleyes.gif winksmiley.jpg


to juz masz w moim drugim skrypcie :wink:
dopasuj se to i zmien nazwe linkow i bedziesz mial to co zes chcial

A to file() to tak mi sie wjebalo bo pisalem na localu i probowalem na pliku

a do czego to sluzy to juz chyba wiesz nie :wink:

Ja spadam jak Mistycus nic nie wymysli to moze ci cos skrobne pozniej ale wlasciwie to juz masz to o co ci chodzilo tylko se to przerob!
Seth
OK, juz mam.
Pokombinowalem z funkcja ceil()
Seth
Sorki za moje lenistwo :oops: ale o tej porze po 12h spedzonych przed komputerem juz nic sie nie chce. biggrin.gif
castor
pochwal sie :wink: biggrin.gif
Mistycus
Świetnie, że już masz, ale mi jakoś nie idzie. Nie działa kod który oznaczyłem na czerwono:
Kod
<?

$ilosc_rekordów=100; //count($twoja_tablica);

$ilosc_stron=ceil($ilosc_rekordów/10);

[color=red]if(isset($QUERY_STRING["numer"])){

$numer=$QUERY_STRING["numer"];

}else{

$numer=1;

};[/color]

if($numer>1){

echo '<a href='.$PHP_SELF.'?numer='.($numer-1).'><<<</a>';

};

echo "Strona $numer z $ilosc_stron";

if($numer<$ilosc_stron){

echo '<a href='.$PHP_SELF.'?numer='.($numer+1).'>>>></a>';

};

?>

Jeśli pominąć ten fragment kodu, to wszystko jest ok, ale czytałem, że w najnowszej wersji php parametry z adresu nie są automatyczne kopiowane do zmiennych o tych samych nazwach.
castor
Cytat
ale czytałem, że w najnowszej wersji php parametry z adresu nie są automatyczne kopiowane do zmiennych o tych samych nazwach.


gdzie ty to zes wyczytal?questionmark.gif?

bzdura!!

A po drugie to nie moze funkcjonowac bo QUERY_STRING nie jest tablica tylko STRINGIEM wwiec jesli chcesz cos wydobyc to musisz explode()!!!!!
Mistycus
Znaleźliście już błąd w tym, co napisałem na czerwono :?:
Ja przez pół godziny szukałem informacji na temat tego, jak odczytać parametry z adresu.

Pomóżcie - tego nigdzie nie ma.
Mistycus
Cytat
gdzie ty to zes wyczytal?questionmark.gif?

bzdura!!

Tutaj: http://archiwum.web-area.org/czytaj.php?id=24
castor
Cytat
Ja przez pół godziny szukałem informacji na temat tego, jak odczytać parametry z adresu.


np tak:

Kod
$tmp=explode("&",$QUERY_STRING);



for($i=0;$i<count($tmp);$i++){

    $ex=explode("=",$tmp[$i]);

    $query_ciag[$ex[0]]=$ex[1];

}



print_r($query_ciag);
castor
zwracam honor ale jesli ty chcesz sie odwolywac do tablicy GET to nie przez QUERY_STRING bo to jest STRING tylko :

Kod
$HTTP_GET_VARS


i to jest tablica asocjacyjna wiec mozesz

Kod
$HTTP_GET_VARS['numer'];



A wez jeszcze zrob wyswietlenie zawartosci a nie tylko linki w tym swoim skrypcie :wink:
Mistycus
Dzięki. $HTTP_GET_VARS to rozwiązanie mojego problemu. A co do $QUERY_STRINGto raczej już nie będę używał :wink:
castor
dlaczego czasami trzeba sprawdzic co jest i jak nie znasz nazw to co zrobisz?questionmark.gif
Mistycus
A po co mi znać zmienne, które ktoś sobie dopisał do URL'a :?:
castor
Cytat
A po co mi znać zmienne, które ktoś sobie dopisał do URL'a


czasaimi warto :wink:

lub np:

generujesz jakies tam zmienne dynamicznie i przesylasz je do drugiego skryptu w URL smile.gif
Mistycus
Podaj mi taką sytuację, w której ten drógi skrypt nie wie jakie zmienne odczytać rolleyes.gif
castor
Cytat
Podaj mi taką sytuację, w której ten drógi skrypt nie wie jakie zmienne odczytać rolleyes.gif


generujesz jakies tam zmienne dynamicznie i przesylasz je do drugiego skryptu w URL

mam na mysli dynamiczne nazwy zmiennych!!
Seth
Jesli chodzi o te indexowanie to napisalem cos takiego:
Kod
function page_index($number){

$page_num = ceil($number/$this->rows);

$page = (ceil($this->offset/$this->rows)+1);  

$index = "<b>".$page."</b> [ ";



for($i = 1; $i <= $page_num; $i++){

if( $page != $i )

$index .= "<a href="javascript:post_query($i)">$i</a> ";

}

$index .= "]";



return $index;

}


$number <- to warotsc wszystkich wynikow zapytania
$this->rows <- ilosc wypisywanych rekordow
$this->offset <- od ktorego rekordu maja byc wypisywane rekordy

Ta funkcja u mnie jest w class'ie wiec sorki za te zmienne. Ale jak ktos chce wykorzystac ta funkcje to wystarczy, ze troche pokombinuje winksmiley.jpg
Seth
Moze komus przyda sie taki kod:
Kod
while(list($key, $val) = each($HTTP_GET_VARS))

  $vars_array ["$key"] = $val;

while(list($key, $val) = each($HTTP_POST_VARS))

  $vars_array ["$key"] = $val;
Mistycus
Cytat
Moze komus przyda sie taki kod:
Kod
while(list($key, $val) = each($HTTP_GET_VARS))

  $vars_array ["$key"] = $val;

while(list($key, $val) = each($HTTP_POST_VARS))

  $vars_array ["$key"] = $val;


Przecież to jest równoznaczne z:
Kod
$vars_array=$HTTP_POST_VARS
Seth
Cytat
Cytat
Moze komus przyda sie taki kod:
Kod
while(list($key, $val) = each($HTTP_GET_VARS))

  $vars_array ["$key"] = $val;

while(list($key, $val) = each($HTTP_POST_VARS))

  $vars_array ["$key"] = $val;


Przecież to jest równoznaczne z:
Kod
$vars_array=$HTTP_POST_VARS

Wcale nie :!:

Sam sprawdz przesylajac do skryptu zmienne metoda POST i jednoczesnie zmienne metoda GET (w adresie).
Zobaczysz wtedy, ze twoj kod wogole nie dziala.
Sprawdzilem, wiec wiem co mowie 8)
castor
Cytat
Kod
while(list($key, $val) = each($HTTP_GET_VARS))

  $vars_array ["$key"] = $val;

while(list($key, $val) = each($HTTP_POST_VARS))

  $vars_array ["$key"] = $val;


To tez jest bez sensu no chyba ze potrzebujesz wszystkie dane w jadnej tablic ale to wtedy lepiej:

Kod
$wszystko=array_merge ( $HTTP_POST_VARS,$HTTP_GET_VARS);


po co przepisywac tablice z tablicy do tablicy

Cytat
Kod
$vars_array=$HTTP_POST_VARS



A po co to jesli juz masz tablice w srodowiskowych.
Seth
Mozna i tak smile.gif
Mistycus
Cytat
po co przepisywac tablice z tablicy do tablicy

Cytat

Kod
$vars_array=$HTTP_POST_VARS



A po co to jesli juz masz tablice w srodowiskowych.

Mówię tylko, że pierwsza część kodu Setha
Kod
while(list($key, $val) = each($HTTP_GET_VARS))

  $vars_array ["$key"] = $val;
jest równoznaczna z
Kod
$vars_array=$HTTP_GET_VARS
, a więc całość można napisać tak, jak Ty to zrobiłeś. Seth niepotrzebnie namieszał :?
castor
Cytat
Mówię tylko, że pierwsza część kodu Setha Kod:  
while(list($key, $val) = each($HTTP_GET_VARS))  
 $vars_array ["$key"] = $val;  
jest równoznaczna z Kod:  
$vars_array=$HTTP_GET_VARS  
, a więc całość można napisać tak, jak Ty to zrobiłeś. Seth niepotrzebnie namieszał


A ja mowie ze to i to jest nie potrzebne bo jak juz mam te watrosci w tablicy: $HTTP_GET_VARS to po co mam je przepisywac do jakiejs drugiej i tylko RAM zasmiecac :wink:
Seth
Rzeczywiscie troche namieszalem :oops:
Zupelnie zapomnialem o funkcji array_merge () rolleyes.gif
:oops: :oops: :oops:
Mistycus
Ty mnie Castor nie rozumiesz - ja chciałem jedynie Sethowi powiedzieć, że to, co on napisał nie ma sensu tak samo, jak ten mój kod, z którym porównałem jego. Żeby było wszystko jasne, ja się całkowicie ZGADZAM z kodem, który Ty napisałeś Castor, a ten mój miał jedynie podkreślić bezsensowność tego, co napisał Seth.


biggrin.gif smile.gif sad.gif ohmy.gif 8O :? 8) laugh.gif :x tongue.gif :oops: :cry: angrysmiley.gif aaevil.gif rolleyes.gif :wink: :!: :?: :idea: :arrow:
castor
Ja ciebie rozumiem i ty mnie rozumiesz :wink:

:!: EOT :!:
Seth
No co kazde mu moze sie zdarzyc rolleyes.gif :oops:
Ale "Kazda droga prowadzi do celu" :wink:
Mac
To pewnie post nie na temat, ale: brawo dla Seth i wszystkich, którzy się tu wpisali :!:
Dlaczego :?:
3 strony tematu to chyba rekord w historii nowego forum nie :?: winksmiley.jpg
smile.gif
Seth
Musimy nie dlugo ustanowic nowy rekord 10 stron w jednym temacie winksmiley.jpg biggrin.gif
Ale to juz chyba w Hydeparku
Jezeli wogole sie pojawi :wink:
Mac
Cytat
Musimy nie dlugo ustanowic nowy rekord 10 stron w jednym temacie winksmiley.jpg biggrin.gif
Ale to juz chyba w Hydeparku
Jezeli wogole sie pojawi  :wink:
10 stron? czemu tak mało?
100 :!: 1000 :!: winksmiley.jpg
Może Hyper założył by nowy dział: REKORDY :!: :!: :!: winksmiley.jpg
Byłby dział, w którym byśmy wpisywali się "dla rekordu" winksmiley.jpg
smile.gif
Seth
zarty zartami ale co jest z tym HYDEPARKIEM :?: :!:
Mistycus
Jak dotąd dwa rekordowe tematy zapoczątkował Seth. BRAVO :!: :!: - Trzymaj tak dalej :wink: smile.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.