Devo realizzare una pagina in cui vengono mostrate due tabelle di dati affiancate (le tabelle mostrano dei parametri campionati ogni giorno quindi all'inizio ho i dati di oggi e di ieri), deve però essere possibile "scorrere" indietro nel tempo caricando la tabella dell'altroieri e così via!

Ho pensato quindi di leggere l'ID (autogenerato ogni inserimento) della tabella di sinistra, sottrarre 1 e far stampare i risultati della query al database!
Questo metodo funziona, ma solo la prima volta che premo il pulsante! Se lo ri-premo ottengo di nuovo il valore e se lo premo un'altra volta ottengo sempre "-1"!
Faccio un esempio:

Ho fatto 6 campionamenti, quindi all'accesso della pagina avrò:

tabella con ID 5 | tabella con ID 6

Premo il pulsante ed ottengo:

tabella con ID 4 | tabella con ID 5

premo ancora:

tabella con ID 4 | tabella con ID 4 (qui ID non si è decrementato e non so come mai, lo script lato server ha fatto il suo lavoro restituendo la tabella con ID = 4)

premo ancora:

errore: nessuna tabella con ID -1 | tabella con ID 4

Probabilmente risolverei con le chiusure ma non sto riuscendo a capire come implementarlo!

Il codice che uso è il seguente:

codice:
function shiftami(){
  var testo = $("#tabSN").html();
  $("#tabelle").empty();
  var livello = eval($("#tabDX_id").html()) -1;
// Richiedo i dati allo script lato server
  $.post("search/shift.php", {l: livello}, function(data) {
    $("#tabelle").html('<div class=\"tabelladati\" id=\"tabDX\"><table border=1><thead><tr><th>Parametro</th><th>Dato</th></tr></thead><tbody>' + data + '</tbody></table></div><div class=\"tabelladati\" id=\"tabSN\">' + testo + '</div>'); 
  }
}
Avete consigli?
Eventualmente ho pensato di realizzare invece di questo metodo un qualcosa tipo un accordion orizzontale, ma dovrei capire come viene quando avrò 6 mesi di rilevazioni e soprattutto cercare di visualizzare sempre due tabelle (quindi due "cassetti" dell'accordion)

Insomma, se esiste un metodo più furbo per ottenere il risultato ditemelo per favore!