Manuali.it
Ciao e Benvenuto/a nel Forum di Manuali.it !
Non sei registrato? Registrati subito cliccando QUI! E utilizza tutte le funzionalita' del sito!
Ci vediamo sul Forum !
Lo Staff di Manuali.it
Oggi è mar mag 22, 2012 8:18 pm

Tutti gli orari sono UTC +2 ore




Apri un nuovo argomento Rispondi all’argomento  [ 27 messaggi ]  Vai alla pagina 1, 2  Prossimo
Autore Messaggio
 Oggetto del messaggio: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP
MessaggioInviato: gio mar 19, 2009 5:59 pm 
Non connesso
Utente
Utente

Iscritto il: mar giu 06, 2006 11:24 pm
Messaggi: 41
Salve utenti del forum.

Ho ricevuto di recente un paio di mail nella quali mi si chiedeva gentilmente di inserire un esempio completo riguardante la paginazione dei dati in PHP, visto che gli esempi fatti in un post collegato, non erano abbastanza chiari.

Questo è il link al post originale :

http://www.manuali.it/forum/viewtopic.php?t=19351&highlight=paginazione

Facendo riferimento al post di cui sopra, prenderemo il caso in cui vogliamo utilizzare la paginazione tramite la funzione : pagination_3 , che comunque inserisco subito sotto.

NOTA: è stata apportata una modifica: i parametri formali della funzione pagination_3 , sono 3
1. $total_pages;
2. $page;
3.$webpage;

Quest'ultima, precendentemente veniva creata come variabile glogale e può andar bene nel caso in cui le impostazioni di REGISTER_GLOBALS del php.ini siano settati su ON.
Con questa modifica, $webpage è una variabile formale della funzione e quindi locale al metodo.

Procediamo.

CODICE funzione pagination_3 che utilizzeremo:

Codice:

/*copiami da qui*/
<?php

function pagination_3($total_pages,$page,$webpage){ //imposto la mia $webpage come parametro formale
       
$pagination = "";
    if($total_pages!=1){
        if($page>'1')
            {
          $pagination.="<a href=".$webpage."?page=1><small>prima</small></a>
                                 <a href=".$webpage."?page=".($page-1).">Prev</a>";
            }

        //Impostiamo il massimo numero di links di partenza da visualizzare nella pagina.
             $maximum_links = 10;

          //Se sono necessarie meno pagine rispetto al numero massimo
           if($total_pages<=$maximum_links)
            {
               //Il numero massimo di links che occorreranno saranno pari al numero totale di pagine + 1
                $maximum_links = $total_pages+1;
            }
            //Se ne sono necessarie di piu, allora:
           else{
                  //$maximum_links +1
                  $maximum_links=$maximum_links+1;
                   if($page>=$maximum_links){
                       $maximum_links=$page+1;
                    }
              }

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

                   if($i==$page){
                $pagination.="<a>".$i."</a>";
            }

            else{
                $pagination.= "<a href=".$webpage."?page=".$i.">".$i."</a>";
                        }
        }

            //next e ultima pagina;

        if(($page >="1")&&($page!=$total_pages)){
            $pagination.= "<a href=".$webpage."?page=".($page+1).">Next</a>
                                        <a href=".$webpage."?page=".$total_pages."><small>ultima</small></a>";
        }

    }
    else{
        $pagination.="";
    }
    return($pagination);

}

//il risultato di questa paginazione è il seguente :
//prima PREV 1 2 3 4 5 6 7 8 9 10 Next ultima

?>
//copiami fino a qui;



Apriamo il nostro server locale o se avete un vostro domino, la vostra root path :
http://localhost/paginazione/.....

1.Creiamo una cartella e chiamiamola "include". Al suo interno creiamo un file : paginazione.inc.php e ci incolliamo il codice che ho messo sopra.

Adesso procediamo al passo 2.

nella vostra path principale del sito , creiamo un file che chiameremo paginazione.php, cosi avremo : http://localhost/paginazione/paginazione.php ;

CODICE paginazione.php :


Codice:

<?php

require "include/config.inc.php";
require "include/dbms.inc.php";
require "include/paginazione.inc.php";

$webpage = basename($_SERVER['PHP_SELF']);
$page = (!isset($_GET['page']))? 1 : $_GET['page'];
$result = mysql_query("select * FROM  dati ORDER BY id ASC");
$max_results = 5;//numero di elementi da visualizzare per pagina.
$total_results = mysql_num_rows($result);
$total_pages = ceil($total_results / $max_results);
$from = (($page * $max_results) - $max_results);
$result=mysql_query("select * FROM dati ORDER BY id ASC LIMIT $from, $max_results ");

while ($i = mysql_fetch_array($result))
{
echo"".$i['id']."-".$i['nome']."<br />";
}

echo pagination_3($total_pages, $page, $webpage);

?>



Adesso, ritorniamo nella nostra cartella include e creiamo 2 nvuovi files, rispettivamente config.inc.php e dbms.inc.php;
config.inc.php serve per configurare la nostra password , l'utente che puo utilizzare il database e il nome del nostro database.
Dbms.inc.php contiene le funzioni per la connessione al database, la gestione dei record , la chiusura del db.


CODICE "config.inc.php" :

Codice:

<?php

define ("BASE_URL", "http://localhost/paginazione/");



define ("DB_HOST", "localhost");
define ("DB_USER", "root");
define ("DB_PASSWORD", "tuapassword");
define ("DB_TABLE", "paginazione");

?>




CODICE "dbms.inc.php" :
Codice:

<?php
//FILE ::: DBMS.INC.PHP

   $DBhost = DB_HOST;
   $DBname = DB_TABLE;
   $DBuser = DB_USER;
   $DBpass = DB_PASSWORD;

   $dbms_database_open = false;


        function openDB() {
        global $database,
               $dbms_database_open,
               $DBhost,
               $DBname,
               $DBuser,
               $DBpass;

                $conn = mysql_Connect($DBhost,$DBuser,$DBpass);
                if ($conn!=false) {
                     $database=$conn;
                     mysql_select_db($DBname);
                     $dbms_database_open = true;
                }
        }

      
        function closeDB() {
        global $database,
               $dbms_database_open;

                mysql_Close($database);
                $dbms_database_open = false;

        }

      function execute_query($query)
        {
                $result = mysql_query($query);

                if (!$result)
                {
                        echo "EXECUTE QUERY HA DATO ERRORE!!!<br>".mysql_error();
                  echo"query:: ".$query;
                        exit;
                }

                return $result;
        }


      
        function db_fetch_array($result)
        {
                return mysql_fetch_array($result);
        }

        function is_empty($result)
        {
                return mysql_num_rows($result) == 0;
        }

      

        openDB();

?>


Ci siamo quasi.
Adesso per rendere completo l'esempio, dobbiamo crearci il nostro bel database semplice semplice.

Vi inserisco il dump del database che ho creato per fare l'esempio :

Codice:
-- phpMyAdmin SQL Dump
-- version 2.10.1
-- http://www.phpmyadmin.net
--
-- Host: localhost
-- Generato il: 14 Set, 2007 at 02:05 PM
-- Versione MySQL: 5.0.41
-- Versione PHP: 4.4.7

SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";

--
-- Database: `paginazione`
--

-- --------------------------------------------------------

--
-- Struttura della tabella `dati`
--

DROP TABLE IF EXISTS `dati`;
CREATE TABLE IF NOT EXISTS `dati` (
  `id` int(11) unsigned NOT NULL auto_increment,
  `nome` varchar(255) NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=16 ;

--
-- Dump dei dati per la tabella `dati`
--

INSERT INTO `dati` (`id`, `nome`) VALUES (1, 'emiliano');
INSERT INTO `dati` (`id`, `nome`) VALUES (2, 'davide');
INSERT INTO `dati` (`id`, `nome`) VALUES (3, 'francesco');
INSERT INTO `dati` (`id`, `nome`) VALUES (4, 'annalisa');
INSERT INTO `dati` (`id`, `nome`) VALUES (5, 'martina');
INSERT INTO `dati` (`id`, `nome`) VALUES (6, 'gigi');
INSERT INTO `dati` (`id`, `nome`) VALUES (7, 'matteo');
INSERT INTO `dati` (`id`, `nome`) VALUES (8, 'genoveffa');
INSERT INTO `dati` (`id`, `nome`) VALUES (9, 'adriano');
INSERT INTO `dati` (`id`, `nome`) VALUES (10, 'mose');
INSERT INTO `dati` (`id`, `nome`) VALUES (11, 'valerio');
INSERT INTO `dati` (`id`, `nome`) VALUES (12, 'emilio');
INSERT INTO `dati` (`id`, `nome`) VALUES (13, 'andrea');
INSERT INTO `dati` (`id`, `nome`) VALUES (14, 'elisa');
INSERT INTO `dati` (`id`, `nome`) VALUES (15, 'vittoria');





Io sto usanto WAMP server, in locale, quindi vado nel mio bel phpmyadmin

http://localhost/phpmyadmin/ e :
1: creo il mio database :"paginazione";
2: Lo seleziono e poi sulla linguetta "QUERY", inserisco il codice relativo al dump del database.


Se volete, potete crearvi direttamente la tabella , senza inserire i dati e farlo voi stessi in un seocndo momento, facendo chiaramente attenzione al fatto che se modificate i nomi dei campi della tabella, li dovrete modificare nella query per l'estrazione dei dati.



Ora che abbiamo creato il nostro bel database, andiamo su:

http://localhost/paginazione/paginazione.php e vedrete il risultato.

Credo sia tutto.
A presto E.

_________________
spero di esserti stato di aiuto.
Per qualsiasi cosa mi puoi contattare o tramite MP, email, msn o , ancora meglio, qui.
buona vita



Condividi: Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Technorati Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a OKNOtizie Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Segnalo Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Digg Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Boomark.it Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Furl Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a de.li.cious Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Yahoo Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Stumbleupon Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Google Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a BlogLines Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a SocialDust.com Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Live.com Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Wikip.it
Top
 Profilo  
 
 Oggetto del messaggio: Re: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP
MessaggioInviato: dom lug 11, 2010 10:49 am 
Non connesso
Novizio
Novizio

Iscritto il: dom lug 11, 2010 10:46 am
Messaggi: 9
Salve,
innanzitutto complimenti per l'ottimo articolo.
Erano mesi che cercavo uno script del genere.

Una domanda: e se volessi aggiungere uno stile css a questo esempio di paginazione come dovrei fare? Così da non avere solo dei semplici link col numeretto.

Grazie.



Condividi: Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Technorati Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a OKNOtizie Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Segnalo Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Digg Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Boomark.it Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Furl Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a de.li.cious Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Yahoo Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Stumbleupon Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Google Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a BlogLines Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a SocialDust.com Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Live.com Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Wikip.it
Top
 Profilo E-mail  
 
 Oggetto del messaggio: Re: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP
MessaggioInviato: dom lug 11, 2010 12:02 pm 
Non connesso
Utente
Utente

Iscritto il: mar giu 06, 2006 11:24 pm
Messaggi: 41
Ciao,
per inserire un foglio di stile personalizzato, è sufficiente prendere la parte di codice:
Codice:
$pagination.="<a href=".$webpage."?page=1><small>prima</small></a>
                                 <a href=".$webpage."?page=".($page-1).">Prev</a>";


ed inserire la classe dello stile che tu hai creato, in questo modo :
Codice:
$pagination.="<a class=\"tuaclasse\" id=\"some_id_if_you_need\" href=".$webpage."?page=1><small>prima</small></a>
                                 <a href=".$webpage."?page=".($page-1).">Prev</a>";


Questa cosa la devi ripetere per ogni $pagination che trovi nella funzione(in questo particolare caso pagination_3).


Ed infine, nella tua pagina index.php(o qualsiasi altra pagina in cui utilizzi la paginazione), inserici il ref al foglio di stile che ti sei creato....ma credo che questo tu già lo sappia.

_________________
spero di esserti stato di aiuto.
Per qualsiasi cosa mi puoi contattare o tramite MP, email, msn o , ancora meglio, qui.
buona vita



Condividi: Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Technorati Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a OKNOtizie Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Segnalo Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Digg Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Boomark.it Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Furl Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a de.li.cious Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Yahoo Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Stumbleupon Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Google Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a BlogLines Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a SocialDust.com Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Live.com Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Wikip.it
Top
 Profilo  
 
 Oggetto del messaggio: Re: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP
MessaggioInviato: dom lug 11, 2010 6:23 pm 
Non connesso
Novizio
Novizio

Iscritto il: dom lug 11, 2010 10:46 am
Messaggi: 9
Ciao,
in effetti, raggionandoci un po su, bastava aggiungere uno stile al link proprio come hai suggerito tu.

Permitti un'ultima domanda: ho scaricato lo script da te postato e l'ho riscritto un po seguendo lo stile del paradigma ad oggetti. In pratica ho creato un'altra funzione che sarebbe proprio il codice da te scritto:
Codice:
public function showPagination($query)
         $webpage = basename($_SERVER['PHP_SELF']);
         $page = (!isset($_GET['page'])) ? 1 : $_GET['page'];
         $result = mysql_query($query, $this->conn);
         $max_results = 3;   // numero di elementi da visualizzare per pagina.
         $total_results = mysql_num_rows($result);
         $total_pages = ceil($total_results / $max_results);
         $from = (($page * $max_results) - $max_results);
         $result=mysql_query($query. " LIMIT $from, $max_results ", $this->conn);
         
         return $result;


In pratica ciò che vorrei fare io è evitare di dover scrivere questo codice in ogni funzione in cui devo effettuare una stampa di dati da un DB.
In questo modo a me basta passare la query all'interno della funzione showPagination($query) e mi viene restituito il risultato con LIMIT.
Il problema è che non sto riuscendo a farlo funzionare correttamente.
I pratica mi stampa lo stesso dato fino all'infiinito senza fermarmi.

Cosa mi consigli di fare?



Condividi: Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Technorati Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a OKNOtizie Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Segnalo Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Digg Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Boomark.it Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Furl Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a de.li.cious Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Yahoo Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Stumbleupon Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Google Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a BlogLines Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a SocialDust.com Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Live.com Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Wikip.it
Top
 Profilo E-mail  
 
 Oggetto del messaggio: Re: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP
MessaggioInviato: dom lug 11, 2010 8:32 pm 
Non connesso
Utente
Utente

Iscritto il: mar giu 06, 2006 11:24 pm
Messaggi: 41
Ciao, spero di aver capito bene il tuo problema.
Come gestisci il $result che ritorna dalla funzione che ti sei creato?

La cosa piu semplice da fare è questa :
1. Ti crei una funzione dove tu passi la query, come hai giustamente pensato;
2. Devi salvare il risultato in un array se vuoi gestirlo in qualche modo.In alternativa, puoi crearti una funzione che non restituisce nulla, ma ti stampa a video il risultato della query. Io opterei piu per la prima opzione , in modo tale che in ogni momento hai il tuo array e lo puoi utilizzare come meglio credi.

quindi, proviamo un po :
Creiamo la nostra funzioncina :

Codice:

funcion show_pagination($mia_query) //questa funzione non ritorna nulla.Stampa solamente il risultato della query;
{
   $webpage = basename($_SERVER['PHP_SELF']);
   $page = (!isset($_GET['page']))? 1 : $_GET['page'];
   
      $result = mysql_query($mia_query);
      $max_results = 5;//numero di elementi da visualizzare per pagina.
      $total_results = mysql_num_rows($result);
      $total_pages = ceil($total_results / $max_results);
      $from = (($page * $max_results) - $max_results);
      $result=mysql_query($mia_query ."LIMIT $from, $max_results ");

       while ($i = mysql_fetch_array($result))
            echo"".$i['id']."-".$i['nome']."<br />";
}

//echo pagination_3($total_pages, $page, $webpage);



In questo altro esempio, potresti salvare il tutto in un array e poi stamparlo come meglio credi:
Codice:
funcion show_pagination($mia_query)
{
   $temp_array = array();
   $webpage = basename($_SERVER['PHP_SELF']);
   $page = (!isset($_GET['page']))? 1 : $_GET['page'];
   
      $result = mysql_query($mia_query);
      $max_results = 5;//numero di elementi da visualizzare per pagina.
      $total_results = mysql_num_rows($result);
      $total_pages = ceil($total_results / $max_results);
      $from = (($page * $max_results) - $max_results);
      $result=mysql_query($mia_query ."LIMIT $from, $max_results ");

       while ($i = mysql_fetch_array($result))
             $temp_array[] = array($i['id']=>$i["nome"]);
           
      return $temp_array;
}


/*quando devi richiamare questa funzione basta che fai in questo modo :
$array_result = $show_pagination($query) ; cosi hai il tuo array e te lo gestisci come vuoi tramite un bel foreach.
*/



Sperando sempre di aver capito bene, ti salvi la funzione in un file , ad esempio: functions.inc.php e richiami la funzione nel file , dove ti serve, in questo modo :

1. se vuoi solo stampare a video : show_pagination($query) e poi richiami la funzione che esegue la paginazione vera e propria;
2 se vuoi salvarti in un array che poi gestirai tu , $result_array = $show_pagination($query);

NOTA: per quanto riguarda l'approccio orientato agli oggetti, dovresti crearti un metodo "GETTER", ossia un metodo ti restituisca un qualcosa partendo dall'oggetto a cui fai riferimento.
In questo particolare caso, tu fai riferimento ad un array, quindi in qualche modo lo devi poter gestire , o al di fuori del metodo o all' interno del metodo.

In piu per essere piu coerenti, dovresti fare un metodo Stampa($tuo_array) che ti stampi il risultato di quello che tu hai ricercato tramite il metodo getter.

Chiedo scusa in anticipo se posso avere scritto qualche bagianata.

Facci sapere se hai ancora problemi.
In qualsiasi momento, sempre a disposizione.

_________________
spero di esserti stato di aiuto.
Per qualsiasi cosa mi puoi contattare o tramite MP, email, msn o , ancora meglio, qui.
buona vita



Condividi: Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Technorati Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a OKNOtizie Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Segnalo Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Digg Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Boomark.it Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Furl Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a de.li.cious Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Yahoo Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Stumbleupon Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Google Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a BlogLines Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a SocialDust.com Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Live.com Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Wikip.it
Top
 Profilo  
 
 Oggetto del messaggio: Re: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP
MessaggioInviato: lun lug 12, 2010 12:47 am 
Non connesso
Novizio
Novizio

Iscritto il: dom lug 11, 2010 10:46 am
Messaggi: 9
Ciao,
innanzitutto grazie per essere stato così chiaro e celere nel rispondere.
Credo, però, di essermi espresso male.
L'idea di racchiudere il codice da te aggiunto (nel primo post) in una funziona a parte nasce dal fatto che vorrei generalizzare la paginazione dei risultati.
Ad esempio, guardiamo un attimo questa stralcio di codice:

Codice:
------------------------
       while ($i = mysql_fetch_array($result))
            echo"".$i['id']."-".$i['nome']."<br />";
---------------------------------------


E se io avessi bisogno di stampare a video dei risultati diversi? Ad esempio,
Codice:
       while ($i = mysql_fetch_array($result))
            echo"".$i['id']."-".$i['nome']. " " .$i['cognome']. " " .$i['paese']. "<br />";


o magari di stampare il contenuto del ciclo for dentro ad una div, con un certo stile magari...
Insomma, vorrei cercare di generalizzare, appunto, la paginazione in modo da poterla rihiamare semplicemente ogni qual volta mi occorra paginare dei risultati, potendo, però, scegliere di volta in volta quali risultati stampare e soprattutto in che modo.
Spero di essere stato più chiaro stavolta.

La mia idea di modificare la funzione showPagination($query) in modo da restituirmi il risultato della chiamata alla query era dato proprio dal motivo che ho spiegato sopra.
Alla fine, dopo ore e ore, ho risolto, ma in un modo molto ortodosso.

Spero quindi di trovare una soluzione migliore.
Grazie.



Condividi: Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Technorati Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a OKNOtizie Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Segnalo Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Digg Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Boomark.it Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Furl Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a de.li.cious Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Yahoo Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Stumbleupon Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Google Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a BlogLines Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a SocialDust.com Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Live.com Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Wikip.it
Top
 Profilo E-mail  
 
 Oggetto del messaggio: Re: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP
MessaggioInviato: lun lug 12, 2010 12:22 pm 
Non connesso
Utente
Utente

Iscritto il: mar giu 06, 2006 11:24 pm
Messaggi: 41
Ciao, perchè non ci fai vedere come hai risolto?
Potrebbe essere utile anche per gli altri utenti del forum :) ed anche un ottimo punto di partenza per poter risovlere al meglio il tuo problema .
Facci sapere ok ?

_________________
spero di esserti stato di aiuto.
Per qualsiasi cosa mi puoi contattare o tramite MP, email, msn o , ancora meglio, qui.
buona vita



Condividi: Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Technorati Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a OKNOtizie Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Segnalo Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Digg Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Boomark.it Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Furl Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a de.li.cious Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Yahoo Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Stumbleupon Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Google Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a BlogLines Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a SocialDust.com Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Live.com Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Wikip.it
Top
 Profilo  
 
 Oggetto del messaggio: Re: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP
MessaggioInviato: lun lug 12, 2010 4:43 pm 
Non connesso
Novizio
Novizio

Iscritto il: dom lug 11, 2010 10:46 am
Messaggi: 9
Più che risolto ho solo ottenuto con una strada più lunga quanto volevo.
Per questo vorrei che qualcuno mi dicesse come fare per generalizzare ancora di più questa funzione.
Vi posto il codice (la funzione principale "pagination_3" è sempre la stessa)

Codice:
class Pagination

      public $total_pages;
      public $page;
      public $webpage;
      public $from;
      public $max_results;
      public $kLimit;

      # $query = chiamata sql
      # $max_res = records per pagina

      public function pagination_3($total_pages, $page, $webpage)
      {
         // tutto come prima
      }

      public function showPagination($query, $max_res)
      {
         $this->webpage = basename($_SERVER['PHP_SELF']);
         $this->page = (!isset($_GET['page']))? 1 : $_GET['page'];
         $result = mysql_query($query, $this->conn);
         //$this->max_results = 3;   // numero di elementi da visualizzare per pagina.
         
         $this->max_results = $max_res;   // numero di elementi da visualizzare per pagina.
         
         $total_results = mysql_num_rows($result);
         
         $this->total_pages = ceil($total_results / $this->max_results);
         $this->from = (($this->page * $this->max_results) - $this->max_results);
         
         $this->kLimit = " LIMIT $this->from, $this->max_results ";
         
      }


e poi ogni volta che voglio avere una paginazione faccio in questo modo
Codice:
      public function stampaDati()
      {
         $sql = "SELECT * FROM dati ORDER BY id ASC";
         
         $ris = mysql_query($sql, $this->connessione);
         
         #paginazione
         include 'pagination.class.php';
         $pag = new Pagination();
         $pag->showPagination($sql, 5);
         
         $ris2 = mysql_query($sql.$pag->kLimit, $this->connessione);
         
         if(mysql_num_rows($ris))   # paginazione
         {
            while($row = mysql_fetch_array($ris2))
            {
               echo $row['nome']. " " .$row['cognome']. " " .$row['etc']. "<br>";
            }
         }
         echo $pag->pagination_3($pag->total_pages, $pag->page, $pag->webpage);   


Addirittura ho anche generalizzato i records da visualizzare per ogni pagina così di volta in volta si può scegliere quanti mostrarne.

Allora? Si può fare meglio?



Condividi: Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Technorati Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a OKNOtizie Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Segnalo Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Digg Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Boomark.it Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Furl Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a de.li.cious Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Yahoo Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Stumbleupon Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Google Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a BlogLines Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a SocialDust.com Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Live.com Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Wikip.it
Top
 Profilo E-mail  
 
 Oggetto del messaggio: Re: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP
MessaggioInviato: lun lug 12, 2010 5:20 pm 
Non connesso
Utente
Utente

Iscritto il: mar giu 06, 2006 11:24 pm
Messaggi: 41
Ciao, non mi pare che cosi tu risolva in fatto di generallizzazione dei campi da visualizzare.
Hai solamente modificato il tipo di approccio : da funzionale ad oggetti.
Ogni volta che fai , ti riscrivi la funzione :

Codice:
public function stampaDati()
      {
         $sql = "SELECT * FROM dati ORDER BY id ASC";
         
         $ris = mysql_query($sql, $this->connessione);
         
         #paginazione
         include 'pagination.class.php';
         $pag = new Pagination();
         $pag->showPagination($sql, 5);
         
         $ris2 = mysql_query($sql.$pag->kLimit, $this->connessione);
         
         if(mysql_num_rows($ris))   # paginazione
         {
            while($row = mysql_fetch_array($ris2))
            {
               echo $row['nome']. " " .$row['cognome']. " " .$row['etc']. "<br>";
            }
         }
         echo $pag->pagination_3($pag->total_pages, $pag->page, $pag->webpage);


e dentro al while cambi i valori dei campi?

Potresti invece inserire all'interno della funzione , un array con i campi che vuoi far visualizzare e lavorare nel while con quei campi.
Esempio : voglio visualizzare solamente il nome ed il cognome presenti nella tabella ,
quindi la mia funzione prenderà 3 parametri :

Codice:
$fieds = array("nome","cognome");

public function showPagination($query, $max_res , $fields)
{
........
/*qui hai il tuo bel while.... e fai in modo di stamparti la riga che ti interessa utilizzando i campi prensenti nel tuo array, in modo da avere alla fine una stringa di questo tipo :

echo $row[$fields[0]]. " " .$row[$fields[1]]. " " .$row[$fields[n]]. "<br>";

è un semplice ciclo annidato.nulla più :)*/
}


questo potrebbe essere un buon approccio per generalizzare e non scrivere ogni volta la funzione di stampa, con elementi differenti.

Domanda : perche crei un costruttore nel metodo stampaDati e non nella classe Pagination?

Potresti fare anche in questo modo : creare un oggetto di tipo pagination, come hai fatto e gli passi gia gli elementi che ti servono cosi hai sempre una cosa di questo tipo :

$pagination= new Pagination($miei_campi);

e quando vuoi stampare i tuoi dati : $pagination->stampaDati();
ancche in questo modo, facendo le opportune modifiche, puoi generalizzare :)



Cita:
Allora? Si può fare meglio?

Certamente si, perche stai sulla buona strada.
Per qualsiasi cosa, sempre a disposizione, come scritto in firma ;)

_________________
spero di esserti stato di aiuto.
Per qualsiasi cosa mi puoi contattare o tramite MP, email, msn o , ancora meglio, qui.
buona vita



Condividi: Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Technorati Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a OKNOtizie Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Segnalo Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Digg Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Boomark.it Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Furl Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a de.li.cious Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Yahoo Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Stumbleupon Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Google Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a BlogLines Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a SocialDust.com Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Live.com Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Wikip.it
Top
 Profilo  
 
 Oggetto del messaggio: Re: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP
MessaggioInviato: lun lug 12, 2010 6:33 pm 
Non connesso
Novizio
Novizio

Iscritto il: dom lug 11, 2010 10:46 am
Messaggi: 9
Ciao armadillo,
la tua soluzione è giusta, ma purtroppo nel mio caso, ho bisogno di gestire ogni singolo while.
Perchè magari in un while ho bisogno di aggiungerci anche una div con un certo stile, in un altro while devo stampare un dato con un particola font...ecc...ecc
Riguardo al costruttore, avevo già provato a metterne uno direttamente nella classe Pagination ma (non ricordo nemmeno il perchè :D ) poi l'ho tolto.

Perciò, purtroppo, non posso usare la soluzione che hai proposto.



Condividi: Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Technorati Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a OKNOtizie Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Segnalo Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Digg Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Boomark.it Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Furl Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a de.li.cious Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Yahoo Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Stumbleupon Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Google Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a BlogLines Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a SocialDust.com Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Live.com Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Wikip.it
Top
 Profilo E-mail  
 
 Oggetto del messaggio: Re: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP
MessaggioInviato: lun lug 12, 2010 7:07 pm 
Non connesso
Utente
Utente

Iscritto il: mar giu 06, 2006 11:24 pm
Messaggi: 41
Puo risultare semplice anche questo quesito : puoi sempre creare un metodo che ti switcha il tipo di formattazione html che desideri avere per la tua paginazione.

Quindi o ti fai una classe HtmlFormat e gli passi un oggetto di tipo Pagination oppure crei un metodo che presa la paginazione te la formatta in base ad un valore numerico.

In alternativa, visto che parli di paginazioni differenti, puoi inserire nel costruttore un valore che vada ad identificare il tipo di formattazione da utilizzare, ad esempio :
simple = semplice testo nero;
table = tabella con bordo nero;
Div = div con bordo rosso;

Quindi avresti un costruttore di questo tipo : $pagination = new Patination($variabile1[,$varN],"TIPO DI PAGINAZIONE");

Se nel costruttore non inserisci il tipo di paginazione, prende quella di default ,ossia semplice testo nero.
Postresti fare quindi un overloading del costruttore.

Poi nel tuo metodo stampaDati, gli passi il tipo di formattazione che a questo punto è una istanza del tuo oggetto $pagination e gli fai stampare il valore che ti serve, con la relativa formattazione.
Quindi, se la variabile di istanza $formattazione è = default, prenderà in considerazione solo questa linea :
Codice:
echo $row['nome']. " " .$row['cognome']. " " .$row['etc']. "<br>";

Se la formattazione è con un font particolare :
Codice:
echo "<span class=\"tua_classe\">".$row['nome']. " " .$row['cognome']. " " .$row['etc']. "</span><br />";


Spero di essermi spiegato.
Siamo sempre qui ;)

_________________
spero di esserti stato di aiuto.
Per qualsiasi cosa mi puoi contattare o tramite MP, email, msn o , ancora meglio, qui.
buona vita



Condividi: Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Technorati Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a OKNOtizie Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Segnalo Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Digg Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Boomark.it Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Furl Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a de.li.cious Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Yahoo Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Stumbleupon Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Google Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a BlogLines Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a SocialDust.com Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Live.com Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Wikip.it
Top
 Profilo  
 
 Oggetto del messaggio: Re: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP
MessaggioInviato: mar lug 13, 2010 11:39 pm 
Non connesso
Novizio
Novizio

Iscritto il: dom lug 11, 2010 10:46 am
Messaggi: 9
Ciao,
io pensavo di riuscire a ottenere qualcosa di più generale possibile (mi scuso per quante volte ho ripetuto questa parola :unibrow: ), cioè ogni volta che c'è una chiamata ad un database (in cui stampa dei dati) me li deve paginare in automatico.
Oppure, come cercavo di fare io, estrarre il ciclo while da dentro la funzione che hai postato tu nel primo posto in modo da poterlo gestire al meglio.
Ho provato a modificare la funzione showPagination($query) in modo che restituite il risultato per poi stamparlo in un ciclo while, ma mi andava in loop.
Spero di aver reso l'idea.
Magari unendo le forse potremmo tirar fuori qualcosa di stabile e facile da usare.



Condividi: Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Technorati Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a OKNOtizie Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Segnalo Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Digg Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Boomark.it Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Furl Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a de.li.cious Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Yahoo Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Stumbleupon Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Google Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a BlogLines Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a SocialDust.com Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Live.com Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Wikip.it
Top
 Profilo E-mail  
 
 Oggetto del messaggio: Re: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP
MessaggioInviato: dom set 12, 2010 5:07 pm 
Non connesso
Novizio
Novizio

Iscritto il: dom lug 11, 2010 10:46 am
Messaggi: 9
Salve a tutti,
rieccomi dopo mesi di assenza poiché ho ripreso solo ora in mano la questione "paginazione".

Vi scrivo perché sto cercando di abbellire, o per lo meno di rendere uniforme alla restante grafica, i link generati dallo script che effettua la paginazione.
In particolare vorrei centrarla a metà pagina senza l'utilizzo di div ma mediante il tag "text-align:center" che pero sembra non funzionare.
Anche perché si dovrebbe mettere una classe per ogni <a> presente...
Potreste, gentilmente, postarmi un piccolo esempio con i css?

Grazie mille.



Condividi: Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Technorati Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a OKNOtizie Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Segnalo Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Digg Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Boomark.it Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Furl Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a de.li.cious Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Yahoo Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Stumbleupon Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Google Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a BlogLines Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a SocialDust.com Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Live.com Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Wikip.it
Top
 Profilo E-mail  
 
 Oggetto del messaggio: Re: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP
MessaggioInviato: lun set 13, 2010 10:42 am 
Non connesso
Utente
Utente

Iscritto il: mar giu 06, 2006 11:24 pm
Messaggi: 41
Ciao e ben tornato.
Per risolvere il tuo problema con il tag text-align:center, devi fare in questo modo.

Codice:
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<title>esempio text-align:center</title>
<style>
#container {text-align: center}
#sub_central_container {margin: auto; border:1px solid #990000;width:300px;}
#super_container{border:1px solid #000000; }

</style>
</head>

<body>
<div id="super_container">
Ciao ciao questo è altro testo non allineato a sinistra
<DIV id="container">
<DIV id="sub_central_container">
<a href="#" >link1</a>|
<a href="#" >link2</a>|
|<a href="#" >link3</a>
|<a href="#" >link4</a>
|<a href="#" >link5</a>
|<a href="#" >link6</a>


</DIV>
</DIV>
</div>
</body>
</html>



E' un esempio semplice e funzionate su IE8, firefox , Opera, Chrome.
Purtroppo non puoi evitare l'utilizzo del div. Il tag <center></center> non vanno piu bene
da come puoi leggere in questa pagina:

http://www.diodati.org/w3c/html401/present/graphics.html#adef-align
Ciao ciao

_________________
spero di esserti stato di aiuto.
Per qualsiasi cosa mi puoi contattare o tramite MP, email, msn o , ancora meglio, qui.
buona vita



Condividi: Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Technorati Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a OKNOtizie Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Segnalo Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Digg Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Boomark.it Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Furl Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a de.li.cious Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Yahoo Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Stumbleupon Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Google Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a BlogLines Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a SocialDust.com Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Live.com Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Wikip.it
Top
 Profilo  
 
 Oggetto del messaggio: Re: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP
MessaggioInviato: ven set 24, 2010 7:28 pm 
Non connesso
Novizio
Novizio

Iscritto il: dom lug 11, 2010 10:46 am
Messaggi: 9
ciao armadillo,
avendo dei container già predefiniti è già con stile, avrei voluto racchiudere questo stile in un apposito file del tipo pagination.css
Alla fine, però, dopo ore e ore ho risolto: ho impostato lo stile direttamente nel file php in cui viene creata la paginazione, mettendo la stessa paginazione in una div, in questo modo:
Codice:
      public function pagination_4($total_pages, $page, $webpage)
      {
         $pagination="<div id=\"paginated\">";


Per funzionare funziona. Speriamo solo che vada bene sempre.

Un'ultima cosa (non so se avevo già fatto questa domanda): mi interesserebbe dare uno stile a questa paginazione facendola magari come google (che mette tante "o" quante sono le pagine") o magari racchiudere ogni numeretto pagina in un riquadratino.
Qualche spunto?



Condividi: Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Technorati Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a OKNOtizie Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Segnalo Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Digg Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Boomark.it Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Furl Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a de.li.cious Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Yahoo Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Stumbleupon Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Google Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a BlogLines Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a SocialDust.com Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Live.com Aggiungi: ESEMPIO COMPLETO PAGINAZIONE DATI IN PHP a Wikip.it
Top
 Profilo E-mail  
 
Visualizza ultimi messaggi:  Ordina per  
Apri un nuovo argomento Rispondi all’argomento  [ 27 messaggi ]  Vai alla pagina 1, 2  Prossimo

Tutti gli orari sono UTC +2 ore


Chi c’è in linea

Visitano il forum: Nessuno e 1 ospite


Non puoi aprire nuovi argomenti
Non puoi rispondere negli argomenti
Non puoi modificare i tuoi messaggi
Non puoi cancellare i tuoi messaggi

Cerca per:
Vai a:  
2000 - 2011 Manuali.it © - P.IVA 00992330670 - Tutti i diritti riservati - Note Legali - Condizioni di utilizzo del sito - Privacy - E' vietata qualsiasi riproduzione parziale o completa se non autorizzata - # Powered by Cykel Software
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Traduzione Italiana phpBB.it
phpBB SEO