Ciao
ho riprovato a fare un echo della sessione tabella e l'echo non mi restituisce nulla.
questi sono gli script in questione:
index.php :
<form action="index2.php" method="post">
<br />
Lista:
<?php
echo "<BR>";
include 'show_liste.php' ; ?> <br />
<br /><br />
<input type="submit" value="Seleziona" />
</form>
show_liste.php : (recupera i nomi di alcune liste che poi andro ad utitlizzare)
//INIZIO__CONNESSIONE___________
include '../db_app/config.php';
include '../db_app/connect.php';
$link = mysql_connect($DB_host, $DB_user, $DB_password);
if (!$link) {
die ('Non riesco a connettermi: ' . mysql_error());
}
$db_selected = mysql_select_db($DB_name, $link);
if (!$db_selected) {
die ("Errore nella selezione del database: " . mysql_error());
}
//FINE DATI CONNESSIONE___________
$query = "select distinct zona_app from appuntamenti Order BY zona_app ASC";
$result = mysql_query($query) or die ('Query not performed');
echo '<select name="tabella">';
echo '<option value="" selected>Seleziona Lista</option>';
while ( $row = mysql_fetch_array($result) ) {
echo '<option value="'.$row['zona_app'].'">'.$row['zona_app'].'</option>';
}
echo '</select>';
index2.php (si occupa dell'estrazione dei dati da $tabella per la paginazione)
<?php
session_start();
$id=session_id();
session_register("tabella");
?>
<title>lista di <? echo "$tabella" ?></title>
<?php
include 'paginazione.php';
include 'stop_mouse.php';
include 'config.php';
$righe_per_pagina = 1;
$url_base ='index2.php';
$pagine_vicine = 1;
// ----------------------------------------------------------------
// C O N N E S S I O N E A L D A T A B A S E
$link = mysql_connect($DB_host, $DB_user, $DB_password);
if (!$link) {
die ('Non riesco a connettermi: ' . mysql_error());
}
$db_selected = mysql_select_db($DB_name, $link);
if (!$db_selected) {
die ("Errore nella selezione del database: " . mysql_error());
}
// ----------------------------------------------------------------
// C A L C O L O D E L N U M E R O D I P A G I N E
// ricavo il numero totale di record
$query = "SELECT COUNT(*) FROM $tabella WHERE (esitotmk='' OR esitotmk IS NULL)";
$result = mysql_query($query);
// record complessivi
$tot_righe = mysql_result($result,0);
// totale pagine
$tot_pagine = ceil($tot_righe / $righe_per_pagina);
// ----------------------------------------------------------------
// P A G I N A C O R R E N T E
$pagina_corrente = isset($_GET['pag']) ? (int)$_GET['pag'] : 1;
// se la pagina corrente è minore di 1
if($pagina_corrente < 1) {
header('location: ' . $url_base);
exit();
}
// se la pagina corrente è maggiore dell'ultima pagina
if($pagina_corrente > $tot_pagine) {
echo "NON CI SONO NOMINATIVI PRESENTI IN QUESTA LISTA<BR>";
echo "<BR>";
echo "<a href='cambia.php'><li>Cambia lista</a>";
exit();
}
// ----------------------------------------------------------------
// E S T R A Z I O N E D E I R E C O R D
// calcolo la prima riga da estrarre con la query
$prima_riga = ($pagina_corrente - 1) * $righe_per_pagina;
$query = "SELECT * FROM $tabella WHERE (esitotmk='' OR esitotmk IS NULL) ORDER BY RAND() LIMIT $prima_riga, $righe_per_pagina";
$result = mysql_query($query);
if (!$result) {
die("Errore nella query $query: " . mysql_error());
}
$elenco_id = array();
while ($row = mysql_fetch_assoc($result)) {
$elenco_id[] = $row;
}
// creazione dei link di paginazione
$link_paginazione = paginazione($tot_pagine, $url_base, $pagina_corrente, $pagine_vicine);
echo $_SESSION['tabella'];
// carico il template HTML
include 'table.html';
?>
cambia.php (si occupa di fare l'unset alla sessione tabella registrata nell' index2.php)
<?php
session_start();
unset($_SESSION['tabella']);
header("Refresh: 0; URL=index.php");
?>
Mettendo un echo al posto dell'header non mi stampa nulla, se torno all'index.php, apro la select, seleziono il nome della lista che dovrebbe caricarmi la index2.php (ovviamente diversa dalla precedente) lui mi apre sempre quella aperta in precedenza.
E' come se la index.php memorizzasse il valore di tabella precedentemente cancellato dall'unset().
Cio che ti ho postato in remoto funziona perfettamente in locale no.
Scusami se mi sono dilungato un po, mavolevo capissi meglio di cosa parlavamo.
Dagli un'occhiata.
A dopo.
Ciao.