Twoje PC  
Zarejestruj się na Twoje PC
TwojePC.pl | PC | Komputery, nowe technologie, recenzje, testy
B O A R D
   » Board
 » Zadaj pytanie
 » Archiwum
 » Szukaj
 » Stylizacja

 
M E N U
  0
 » Nowości
0
 » Archiwum
0
 » Recenzje / Testy
0
 » Board
0
 » Rejestracja
0
0
 
Szukaj @ TwojePC
 

w Newsach i na Boardzie
 
OBECNI NA TPC
 
 » PeKa 06:01
 » McSlavko 05:40
 » hokr 05:18
 » Mav 05:10
 » Bergerac 05:02
 » tian 03:49
 » PiotrexP 02:38
 » PaKu 02:24

 Dzisiaj przeczytano
 41110 postów,
 wczoraj 25974

 Szybkie ładowanie
 jest:
włączone.

 
ccc
TwojePC.pl © 2001 - 2024
A R C H I W A L N A   W I A D O M O Ś Ć
    

Do programistów php i mysql - potrzebuje pomocy , _oLo_1984 2/08/06 18:01
... w napisaniu skryptu, ktory pokazuje mi na stronie okreslona ilosc pozycji z bazy mysql np. w sklepie internetowym czy na innych stronkach wyswietlane jest np 10 pozycji i na dole jest link do kolejnych 2,3,4 itd. Jak to napisac, jestem poczatkujacy wiec prosze o wyrozumialosc i pomoc, z goory dziekuje

awake

  1. no więc... , john565 2/08/06 18:49
    <?
    require ("sql.php");
    if ($_GET['start']=="") $_GET['start']="0";


    $wyn_na_strone = 100;
    $zapytanie = "SELECT COUNT(*) AS ile FROM losowanie";
    $wynik = mysql_query($zapytanie) or die (mysql_error());
    $rekord = mysql_fetch_array($wynik, MYSQL_ASSOC);
    $ilosc = $rekord['ile'];
    mysql_free_result($wynik);

    <tutaj pozostała treść strony >

    $licznik=1;
    for($x=0;$x<$ilosc;$x=$x+$wyn_na_strone)
    {
    if ($x==$_GET['start'])
    {
    echo $licznik."&nbsp;";
    }
    else
    {
    echo "<a href=\"".$SCRIPT_NAME."?start=".$x."\">".$licznik."</a>&nbsp;";
    }
    $licznik++;
    }


    mysql_free_result($wynik);
    mysql_close($polaczenie);
    ?>


    i ze tak powiem jak już sie zbaiuerasz za PHP to sie troszeczke przestaw na logiczne myślenie, bo to barszcz jest, chwila głowkowania i zrobione.

    f*ck

    1. ok dzieki , _oLo_1984 2/08/06 19:05
      troche w inne mańke kombinowałem dlatego mi nie wychodziło


      pozdr

      awake

  2. jesli piszesz obiektowo , PaKu 2/08/06 19:43
    to luknij na ta moja klase moze ci sie przyda

    <?php
    class model_dao_Stronnicowanie {
    protected $_db;

    function __construct(){
    $this->_db=$GLOBALS['db'];
    }

    protected function PoliczRekordy($zapytanie){
    /*
    Metoda pobiera zapytanie i zwraca liczbe wierszy pobranych za pomoca tego zapytania
    Metoda buforuje rowniez dane w zmiennej sesji
    */
    $pozycja=stripos($zapytanie,"FROM ");
    if($pozycja==false)
    tigger_error("Nieprawidłowa instrukcja");
    if(isset($_SESSION['ost_zapytanie']))
    if(strcasecmp($_SESSION['ost_zapytanie'],$zapytanie)==0)
    return $_SESSION['ost_liczba'];
    //zapytania nie ma w buforze, ustalamy liczbe wierszy
    $zap="SELECT count(*) ".substr($zapytanie,$pozycja);
    $wynik=$this->_db->DbGetOne($zap);
    //zapisujemy dane w budorze
    $_SESSION['ost_zapytanie']=$zapytanie;
    $_SESSION['ost_liczba']=$wynik;
    return $wynik;
    }

    protected function StronnicowanieWynikow($zapytanie,$nr_strony,&$r_liczba_stron){
    /*
    Metoda stronnicuje wyniki i zwraca zapytanie
    $zapytanie - ciag tekstowy zapytania
    $nr_strony - numer aktualnie wyswietlonej strony
    &$r_liczba_stron - zmienna przekazywana przez referencje okresla liczbe wszystkich stron
    */
    $liczba_rek=$this->PoliczRekordy($zapytanie);
    if($liczba_rek<=LICZBA_PROD_NA_STRON){
    $nr_strony=1;
    $r_liczba_stron=1;
    }
    else{//stronnicowanie wynikow
    $r_liczba_stron=ceil($liczba_rek/LICZBA_PROD_NA_STRON);
    $start=($nr_strony-1)*LICZBA_PROD_NA_STRON;
    $zapytanie.=" LIMIT $start ,".LICZBA_PROD_NA_STRON;
    }
    return $zapytanie;
    }
    }
    ?>

    bez podpisu

    1. dzieki wielkie , _oLo_1984 3/08/06 14:19
      napewno się przyda


      pozdrawiam

      awake

  3. poczytaj o , wukillah 3/08/06 19:03
    sql_calc_found_rows z http://dev.mysql.com/
    SELECT SQL_CALC_FOUND_ROWS * FROM tbl_name
    -> WHERE id > 100 LIMIT 10;
    SELECT FOUND_ROWS()

    just d'oh it!

    
All rights reserved ® Copyright and Design 2001-2024, TwojePC.PL