Buongiorno,
ho un problema con la memorizzazione dei cookie (o almeno credo che il problema stia li, ma potrebbe anche non essere questo il problema). Dato che ci sto smanettando da diverse ore ed attualmente sono in una situazione di stallo, chiedo aiuto a Voi.
Vi spiego prima cosa devo fare... In una pagina php leggo un file excel ed estrapolo i dati. Non sempre mi servono tutti i dati e quindi vorrei filtrarli prima della stampa a video. Per fare questo utilizzo dei checkbox presi da un array in php. Quindi dovrebbe accadere questo:
1) al primo caricamento non c'� nessun checkbox selezionato e quindi non verr� stampato nulla dei dati.
2) seleziono solo i checkbox che mi interessano.
3) ricarico la pagina, leggo i cookie, rendo 'checked' i checkbox selezionati, memorizzo quelli da mostrare in un altro array php e stampo solo i dati che mi interessano.
4) la volta successiva che ricarico la pagina, ovviamente dovrebbe tener conto dei checkbox selezionati l'ultima volta.
Ho questa funzione javascript e premetto anche che l'alert mi restituisce correttamente il nome (che poi � anche l'id) del checkbox ed il valore true o false in base al fatto che sia stato selezionato o meno.
codice:
function saveCookie_DS (cb) { //alert(cb.value + " - " + cb.checked);
if (cb.checked == 1) {
document.cookie = true;
document.getElementById(cb.value).checked = true;
} else {
document.cookie = false;
document.getElementById(cb.value).checked = false;
}
}
Invece per quanto riguarda il codice php ho questo:
codice:
foreach ($array_distretti_sigla as $key => $value) { if (isset($_COOKIE[$key])) {
print("_COOKIE ".$key." - ".$_COOKIE[$key]."</br>");
$tabella_errori_HTML .= "<pre align='center'>"."Cookie per ".$key." trovato</br>"."\r\n"."</pre>";
$cb_DS_HTML .= "<input type='checkbox' name='".$key."' id='".$key."' value='".$key."' checked onChange='saveCookie_DS(this)' /><label>".$array_distretti_sigla[$key]." </label>";
array_push($array_DS_show, $key);
} else {
$cb_DS_HTML .= "<input type='checkbox' name='".$key."' id='".$key."' value='".$key."' onChange='saveCookie_DS(this)' /><label>".$array_distretti_sigla[$key]." </label>";
}
}
Grazie