Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15
  1. #1

    Non riesco a fare la paginazione con odbc Access?

    Buon giorno ragà, potete aiutarmi indicandomi un tutorial o qualcosa di già fatto open source, dove posso basarmi per il mio caso?Sono disperato...Mi date una mano per favore?Grazie

  2. #2
    Utente di HTML.it L'avatar di ade_v
    Registrato dal
    Jan 2001
    Messaggi
    460
    Per paginazione intendi la suddivisione dei record estratti in più pagine?
    ade_v@yahoo.it

    Fletto i muscoli e sono nel vuoto

    Se inviate messaggi privati, avvisatemi sul forum...

  3. #3
    Utente di HTML.it L'avatar di ade_v
    Registrato dal
    Jan 2001
    Messaggi
    460
    Codice PHP:
    <?php
    echo "<head><title>Paginazione PHP + Access</title>
    </head>
    <body bgcolor=#FFFFFF text=#000066 link=#000066 vlink=#000066 alink=#000066>
    "
    ;
     
    $rec_pagina 4// questo valore sta ad indicare quanti record vuoi per pagina
    if (!isset($start)) $start 0// setta a 1 il punto di partenza della selezione

    $dsn="tuo_dsn";
    $utente="nome_utente";
    $password="tua_password";


    $conn=odbc_connect("$dsn","$utente","$password")
    or die (
    "Connessione al DB impossibile");
    $Query_Str="SELECT campo1,campo2,campo3 FROM tabella";
    $Query_totale=odbc_exec($conn,$Query_Str)
    or die (
    "Query non effettuata");
    for (
    $num_totale=1;odbc_fetch_row($Query_totale,$num_totale);$num_totale++);


    // due parole...
    echo "<center>
          <font color=90000 face=Arial, Helvetica, sans-serif size=5>
          [b]Il nostro catalogo[/b]</font>
    "
    ;
          
          
    //arrotonda al numero intero + alto riferito al risultato della divisione
          //per calcolare il numero totale delle pagine da visualizzare
          
    $numero_pagine round($num_totale/$rec_pagina);


          
    // calcola il numero della pagina corrente
          
    $pagina_correnteround(($start/$rec_pagina)+1);
        if (
    $numero_pagine>0)
        {
        echo 
    "<font color=90000 face=verdana size=2>Pagina $pagina_corrente di $numero_pagine</font>
    "
    ;
        }
        else 
        {
        die (
    "<hr><font color=90000 face=verdana size=3>[b]Nessun elemento inserito[/b]</font>
    <hr>"
    ); 
        }

    echo 
    "</center>

    "
    ;
           
    // stampo l'inizio della tabella che mostrerà il tutto
    echo "<table width=100% border=1 cellspacing=2 cellpadding=3 bordercolor=#FFFFFF>";


    $riga=$start+4;


    for (
    $num_totale=1;odbc_fetch_row($Query_totale,$num_totale);$num_totale++)
    {

    $arr_campo1[$num_totale]=odbc_result($Query_totale,1);
    $arr_campo2[$num_totale]=odbc_result($Query_totale,2);
    $arr_campo3[$num_totale]=odbc_result($Query_totale,3);

    $campo1=$arr_campo1[$num_totale];
    $campo2=$arr_campo2[$num_totale];
    $campo3=$arr_campo3[$num_totale];

    if (
    $num_totale<=$riga and $num_totale>$start)
    {


    echo 
    "
      <tr bgcolor=#000066>
        <td colspan=2><font face=Arial, Helvetica, sans-serif size=3 color=#FFFFFF>[b]
    $campo1[/b]</font></td>
      </tr>"
    ;
    echo 
    "
        <tr bgcolor=#FFFFFF><td width=50%><font face=Arial, Helvetica, sans-serif size=2 color=#000066>
    $campo2</font></td>";
    echo 
    "
        <tr bgcolor=#FFcc00><td width=50%><font face=Arial, Helvetica, sans-serif size=2 color=red>
    $campo3</font></td>";    

        


    // fine if



    // fine for
    ;


    echo 
    "</table>";// chiusura tabella

    echo "<center>";

    if (
    $numero_pagine 1) { //inizio della condizione per creare l'elenco delle pagine

      
    for ($pagina 1$pagina <= $numero_pagine$pagina++) {
        echo 
    "[&nbsp<a href=?";
        echo 
    "start=".(($pagina-1)*$rec_pagina).
        
    " title=\"Vai a pagina $pagina\">".$pagina."</a>&nbsp]&nbsp";
      }
      } 
    // fine "elenco"

      
    echo "</center>";

    echo 
    "


    "
    ;
    odbc_close($conn);


    ?>
    ade_v@yahoo.it

    Fletto i muscoli e sono nel vuoto

    Se inviate messaggi privati, avvisatemi sul forum...

  4. #4
    ti ringrazio... però mi restituisce questo errore:
    SQL error:[Microsoft][Driver Manager ODBC] lunghezza della stringa o del buffer non valida, SL state 1090 in SQLConnect in line 33

    e la riga 33 è questa:

    codice:
    questa è la stringa di connessione DSN
    $path = "percorso\officine.mdb";
    $cn_string= "Provider=Microsoft.Jet.OleDB.4.0;Data Source=$path;";
    
    $rec_pagina = 4;
    $dsn = $cn_string;
    $utente="";
    $pass="";
    
    linea 33-->$conn = odbc_connect($dsn,$utente,$pass);
    Non so come risolvere....

  5. #5
    Utente di HTML.it L'avatar di ade_v
    Registrato dal
    Jan 2001
    Messaggi
    460
    Lo script che ti ho passato fa già la connessione al db access; devi solo impostare user, password e dsn, e per la select i nomi giusti dei campi e delle tabella
    ade_v@yahoo.it

    Fletto i muscoli e sono nel vuoto

    Se inviate messaggi privati, avvisatemi sul forum...

  6. #6
    Utente di HTML.it L'avatar di ade_v
    Registrato dal
    Jan 2001
    Messaggi
    460
    $dsn = "$cn_string";
    ade_v@yahoo.it

    Fletto i muscoli e sono nel vuoto

    Se inviate messaggi privati, avvisatemi sul forum...

  7. #7
    Utente di HTML.it L'avatar di ade_v
    Registrato dal
    Jan 2001
    Messaggi
    460
    Ricapitoliamo un po' perche mi sa che non ci capiamo.

    Stai lavorando in locale ?
    ade_v@yahoo.it

    Fletto i muscoli e sono nel vuoto

    Se inviate messaggi privati, avvisatemi sul forum...

  8. #8
    Utente di HTML.it L'avatar di ade_v
    Registrato dal
    Jan 2001
    Messaggi
    460
    Non considerare $dsn = "$cn_string"; !!!!!!!

    $cn_string non contiene non contiene il dsn (data source name) del db.
    il dsn non è il percorso del db ma un nome fittizio che va impostato precedentemente dal pannello di controllo ODBC del tuo pc (se lavori in locale) o sul pannello web se lavori direttamente sul web server.
    ade_v@yahoo.it

    Fletto i muscoli e sono nel vuoto

    Se inviate messaggi privati, avvisatemi sul forum...

  9. #9
    allora..sto lavorando in locale,ma..devo mettere il db on-line sull'hosting di aruba.it,quindi mi serve una stringa di connessione e basta...credo o no?

  10. #10
    Utente di HTML.it L'avatar di ade_v
    Registrato dal
    Jan 2001
    Messaggi
    460
    Immagino che su Aruba tu abbia a disposizione un pannello di controllo. Quindi fai l'upload del tuo db su aruba e dal pannello di controllo setti il dsn.

    Lavorando in locale crei invece il dsn dal pannello di controllo ODBC
    ade_v@yahoo.it

    Fletto i muscoli e sono nel vuoto

    Se inviate messaggi privati, avvisatemi sul forum...

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 © 2024 vBulletin Solutions, Inc. All rights reserved.