Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 23
  1. #1
    Utente di HTML.it L'avatar di zumo
    Registrato dal
    Jun 2002
    Messaggi
    141

    dividere risultati in diverse pagine

    come si può dividere il risultato di una ricerca(nel propio sito) in diverse pagine ,non sapendo a priori quanto è il risultato visto che è in continuo aggiornamento?
    con la possibilità di passare di pagina in pagina...più o meno come questa:

    http://php.html.it/guide/lezione/269...egli-articoli/

    Codice PHP:
    //sql per recuperare elenco camperservice con condizioni in ingresso....
                    
    $sql="select * from camperservice where id=id $where_localita $where_citta $where_regione $where_stato $where_cs $where_aa $where_ps $where_camper_stop $where_wifi $where_gratis $where_pagamento ";
                    
    //print "-$sql-";
                    
                    //print ("-$sql-
    ");
                    
    $result_sql=mysql_query($sql,$dbconn);
                    
                    
                    if(
    $result_sql!=""){
                        
                        print "
    <table width='100%'>";
                        
                        //mostro elenco risultati
                        while(
    $row_sql=mysql_fetch_object($result_sql)){
                            //stringa di descrizione del cs
                            
                            
    $tx_indirizzo = " $row_sql->localita$row_sql->citta ";
                            
                            if(
    $row_sql->cs==1) $comp_cs = "[b]CS[/b]";
                            else 
    $comp_cs = "";

                            if(
    $row_sql->aa==1) $comp_aa = "[b]AA[/b]";
                            else 
    $comp_aa = "";

                            if(
    $row_sql->ps==1) $comp_ps = "[b]PS[/b]";
                            else 
    $comp_ps = "";

                            if(
    $row_sql->camper_stop==1) $comp_camper_stop = "[b]CAMPER-STOP[/b]";
                            else 
    $comp_camper_stop = "";

                            if(
    $row_sql->wifi==1) $comp_wifi = "[b]WI-FI[/b]";
                            else 
    $comp_wifi = "";

                            
    $tx_tipo = "$comp_cs $comp_aa $comp_ps $comp_camper_stop $comp_wifi";
                            
                            
                            //comp nome
                            if((
    $row_sql->localita == $row_sql->citta)||($row_sql->citta == "")){
                                
    $tx_nome = "$row_sql->localita";
                            }else{
                                
    $tx_nome = "$row_sql->localita ($row_sql->citta)";
                            }
                            
                            
                            
    $cs_box = "<table class='box' class='testonormale' align='left' width='50%'>
                                                    <
    tr>
                                                        <
    td align='left'>
                                                            [
    url='detail.php?id_cs=$row_sql->id'][b]$tx_nome[/b][/url]
                                                        </
    td>
                                                    </
    tr>
                                                    <
    tr>
                                                        <
    td align='left'>
                                                            
    $tx_tipo
                                                        
    </td>
                                                    </
    tr>
                                                    <
    tr>
                                                        <
    td align='left'>
                                                            
    $row_sql->indirizzo $row_sql->localita ($row_sql->citta)
                                                        </
    td>
                                                    </
    tr>
                                                </
    table>";
                            
                            
                            
                            print ("
    <tr><td>$cs_box</td></tr>");
                        
                        }
                        
                        print "
    </table>";
                    }else{
                        print ("
    <span class='testonormale'>Nessun CamperService trovato</span>");
                    }
                    
                    print ("
    <span class='testonormale' align='left'>[url='index.php']nuova ricerca[/url]</span>");
                            
                } 

  2. #2
    Utente di HTML.it L'avatar di dottwatson
    Registrato dal
    Feb 2007
    Messaggi
    3,012
    ci sarebbe la possibilità di farlo direttamente nel codice, ma per non "sporcarlo", quindi mantenere una facile lettura ti consiglio una classe fatta apposta.. ce ne sono tantissime in rete

    www.phpclasses.org

    ti iscrivi(gratuitamente), e cerchi pager
    Non sempre essere l'ultimo è un male... almeno non devi guardarti le spalle

    il mio profilo su PHPClasses e il mio blog laboweb

  3. #3
    Utente di HTML.it L'avatar di zumo
    Registrato dal
    Jun 2002
    Messaggi
    141
    dottwatson sei gentilissimo ma ho provato ma l'inglese è scarso...

  4. #4
    Utente di HTML.it L'avatar di dottwatson
    Registrato dal
    Feb 2007
    Messaggi
    3,012
    aiutati con google.... strumenti per le lingue e gli passi il link da trtadurre...
    Non sempre essere l'ultimo è un male... almeno non devi guardarti le spalle

    il mio profilo su PHPClasses e il mio blog laboweb

  5. #5
    effettivamente queste raccolte di librerie/classi/codici/... opensource hanno la caratteristica di essere poco fatte bene..... mille pagine tecniche invece che dare subito una spiegazione di cosa fa di bello e come funziona...

    mi sono iscritto anche io ora per altri motivi, ma non nascondo che mi fa venire voglia di andare a letto...

    cmq io faccio normalmente con 1 cookie che salva la pagina interessata, questo mi permette di settare facilmente la query di select..... 1 altra query può servirmi per costruire il classico "1 2 3 4 5 ..."
    Farmacia di Jarno - le mie pillole: Cookie [#780810], Dom4Php4 [#1123236], Fade [#1139489], getCssProperty [#1152911]
    Inchinatevi difronte al Prof! Nacchio!

    A me pare che l'uomo vada avanti con la retromarcia

  6. #6
    Utente di HTML.it L'avatar di zumo
    Registrato dal
    Jun 2002
    Messaggi
    141
    di fatti mi sto perdendo e riesco a capire poco
    i cookie non li vorrei usare se si può

  7. #7
    allora usa un GET o POST, come ti pare ...quest'avversione ai cookie è di molti, ma guarda che sono tra le cose più semplice ed utili del web
    Farmacia di Jarno - le mie pillole: Cookie [#780810], Dom4Php4 [#1123236], Fade [#1139489], getCssProperty [#1152911]
    Inchinatevi difronte al Prof! Nacchio!

    A me pare che l'uomo vada avanti con la retromarcia

  8. #8
    Utente di HTML.it L'avatar di dottwatson
    Registrato dal
    Feb 2007
    Messaggi
    3,012
    tu hai un array che vuoi spezzare in pagine giusto? ok cominciamo...

    supponiamo che

    Codice PHP:
    <<?
    $arr
    =array(1,2,3,4,5,6,7,8,9,0);

    $max=3//numero di elemnti per pagina

    $pos=array();

    foreach (
    $arr as $key=>$val)
    {
    if (
    is_int($key/$max))
    $pos[]=$key;
    }

    $page=array();
    foreach (
    $pos as $key=>$val)
    {
    $page[$key]=Array();
    $page[$key]=array_slice($arr,$val,$max);
    }


    echo 
    "<pre>";
    print_r($page);

    foreach (
    $page[$_GET['pag']] as $key=>$val)
      echo 
    $val."
    "
    ;

    foreach(
    $page as $key=>$val)  
    print 
    "<a href=\"page.php?pag=$key\"> ".($key+1)." </a>";

    ?>
    questa te l'ho fatta suul momento... vedi te come adattarla


    Non sempre essere l'ultimo è un male... almeno non devi guardarti le spalle

    il mio profilo su PHPClasses e il mio blog laboweb

  9. #9
    Utente di HTML.it L'avatar di zumo
    Registrato dal
    Jun 2002
    Messaggi
    141
    guardando in giro ho iniziato così:
    Codice PHP:
    $elementi_pagina 5;
                    
    //sql per recuperare elenco camperservice con condizioni in ingresso....
                    
    $sql_count="select count(*) as conteggio from camperservice where id=id 
                    
    $where_localita $where_citta $where_regione $where_stato $where_cs 
                    
    $where_aa $where_ps $where_camper_stop $where_wifi $where_gratis";                
                    
                    
    //print "-$sql-";
                    
                    //print ("-$sql-
    ");
                    
    $result_sql_count=mysql_query($sql_count,$dbconn);
                    
    $row_sql_count=mysql_fetch_object($result_sql_count);
                    print "
    $row_sql_count->conteggio";
                    
                    
                    if(
    $result_sql_count!=""){
                        
                        print "
    <table width='100%'>";
                        
                        //mostro elenco risultati
                        while(
    $row_sql_count=mysql_fetch_object($result_sql_count)){ 
    mi stampa quanti cs ci sono in tutto ma pi mi sono arenato

  10. #10
    Utente di HTML.it L'avatar di dottwatson
    Registrato dal
    Feb 2007
    Messaggi
    3,012
    Codice PHP:
    <?
    $max
    =5//elementi_pagina
                    //sql per recuperare elenco camperservice con condizioni in ingresso....
                    
    $sql_count="select count(*) as conteggio from camperservice where id=id
                    
    $where_localita $where_citta $where_regione $where_stato $where_cs
                    
    $where_aa $where_ps $where_camper_stop $where_wifi $where_gratis";                
                    
                    
    //print "-$sql-";
                    
                    //print ("-$sql-
    ");
                    
    $ask=mysql_query($sql_count,$dbconn);
                   
    $out="";
      while(
    $res=mysql_fetch_array($ask,MYSQL_ASSOC))
      foreach (
    $res as $key=>$arr)
      
    $out[]=$arr;  
      mysql_free_result(
    $ask);

    $pos=array();

    foreach (
    $out as $key=>$val)
    {
    if (is_int(
    $key/$max))
    $pos[]=$key;
    }

    $page=array();
    foreach (
    $pos as $key=>$val)
    {
    $page[$key]=Array();
    $page[$key]=array_slice($arr,$val,$max);
    }


    echo "
    <pre>";
    print_r(
    $page);

    foreach (
    $page[$_GET['pag']] as $key=>$val)
    foreach 
    $val as $chiave=>$valore
      echo 
    $chiave è $valore."
    ";

    foreach(
    $page as $key=>$val)  
    print "
    <a href=\"page.php?pag=$key\"> ".($key+1)." </a>"

    ?>
    dovrebbe funzionare....
    Non sempre essere l'ultimo è un male... almeno non devi guardarti le spalle

    il mio profilo su PHPClasses e il mio blog laboweb

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.