Parametri memorizzati come sessioni - Pro / Contro?

0

Alcuni sfondi sul mio sistema:

Ho 1 query con più pagine. Ci sono dei parametri di filtraggio sulla sinistra della pagina che $_POST s all'invio. I parametri pubblicati cambieranno la query nella parte superiore della pagina.

Il mio problema è che ho a che fare con WordPress e la paginazione è un link assoluto. Ogni volta che un utente accede a una nuova pagina, perdo la mia matrice $_POST e la query si ripristina.

Ho trovato una soluzione a questo problema memorizzando i miei parametri di filtraggio $_POST come parametri $_SESSION per portarli su più pagine e mantenendo così la mia query di ripristino. È una cattiva idea?

Ho letto questa domanda e risposta: Risultati memorizzati in un sessione - buona idea? ma non ero sicuro se fosse la stessa situazione della mia o di un'altra. In questa domanda sembra che stia memorizzando i risultati dell'intero database in una sessione, quindi tagliandolo come ha bisogno contro sto ancora facendo query di database usando solo quello che era nell'ultima sessione. Inoltre non sto usando ajax per impaginare come sopra, perdo la mia matrice $_POST .

È lo stesso scenario della domanda precedente pubblicata solo con un sapore diverso? L'uso di $_SESSION è accettabile?

    
posta Howdy_McGee 10.11.2014 - 23:58
fonte

2 risposte

1

Ci sono due principali svantaggi nel farlo in questo modo:

  1. Il tuo sito si interromperà per tutti gli utenti che hanno disabilitato i cookie. Anche se questa non è una configurazione comune, a volte capita.

  2. Gli utenti che tentano di aprire più schede sul tuo sito potrebbero riscontrare problemi di navigazione.

Tendo ad evitarlo per questi motivi, ma se è l'unico modo realistico (non ho mai lavorato con wordpress quindi non so quali alternative hai) allora nessuno di questi è un completo showstopper.

    
risposta data 11.11.2014 - 11:48
fonte
0

I have 1 query with multiple pages. There are filtering parameters on the left of the page which $_POSTs on submission.

Questo è il tuo problema proprio lì. Una query dovrebbe essere un GET secondo i verbi HTTP e l'utilizzo di un GET renderebbe facilmente possibile passare semplicemente la query di ricerca da una pagina all'altra (questo è come ogni singolo motore di ricerca lo fa).

    
risposta data 11.11.2014 - 12:04
fonte

Leggi altre domande sui tag