Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    136

    Paginazione e perdita dati

    Ho un form di ricerca che fa un post ad una pagina chiamata ricerca.php la quale a sua volta si occupa di eseguire con i dati prelevati dal post la query sul db.

    $theDate = isset($_POST["date1"]) ? $_POST["date1"] : "";
    $theDate2 = isset($_POST["date2"]) ? $_POST["date2"] : "";
    $canale = $_POST["cat"];
    $testo = $_POST['testo'];

    Poichè il file di paginazione incluso nella pagina lavora con parametri recuperati da query string, ho un problema, poichè quando vado alla pagina successiva perdo i dati:

    <?php

    if($current_page == 1) { // se siamo nella prima pagina
    $precedente = "<< precedente";
    } else { // altrimenti
    $previous_page = ($current_page - 1);
    $precedente = "<a href=\"?page=$previous_page&cat=$canale&testo=$tes to\" title=\"Vai alla pagina precedente\"><< precedente</a>";
    }

    if($current_page == $tot_pages) { // se siamo nell'ultima pagina
    $successiva = "successiva >>";
    } else { // altrimenti
    $next_page = ($current_page + 1);
    $successiva = "<a href=\"?page=$next_page&cat=$canale&testo=$testo\" title=\"Vai alla pagina successiva\">successiva >></a>";
    }
    $paginazione = "$precedente $successiva";

    ?>

    Come mi consigliate di procedere?

    ciao

  2. #2
    Salva i dati in sessione oppure accodali in query string in tutti i link oppure modifica la paginazione per inviarli tramite post (es. tramite campi hidden)

  3. #3
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    136
    grazie.

    Mi faresti un esempio di come modificare la paginazione tramite campi hidden?

    ciao

  4. #4
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    136
    ho provato con le session ma il problema rimane:

    $_SESSION['datainizio'] = $_POST['date1'];
    $_SESSION['datafine'] = $_POST['date2'];
    $_SESSION['canale'] = $_POST['cat'];

    $sql = "SELECT articoli.*,articoli.id as id_articolo, canali.*, int_canali.idcanale " .
    "FROM canali INNER JOIN (articoli INNER JOIN int_canali ON articoli.id = int_canali.idarticolo) ON canali.id = int_canali.idcanale " .
    "WHERE (((int_canali.idcanale) = " . $_SESSION['canale'] . "))";

    Perchè quando con la paginazione passo alla pagina successiva perdo la variabile $_SESSION['canale']

    ciao

  5. #5

    Passaggio dati tra le pagine

    Ricorrere ai campi hidden, è utile per evitare di visualizzare i campi d'interesse, pur effettuando il post.E' sufficiente che denomini i campi piuttosto che input, hidden.Vi è il vantaggio che tali campi non appaiano neanche sulla barra degli indirizzi come post

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.