Ciao,
ho un problema simile con i checkbox multivalore inseriti all'interno di un cms.
I checkbox della form si riferiscono a categorie tipo Moda, Alimenti, Sport, Libri ecc. e li genero dinamicamente con un ciclo while pescando da una tabelle del db. Ora se chi lavora sul cms seleziona i suoi checkbox, perché li associa a un determinato negozio, io li recupero in questo modo:
$categoria = serialize($_POST['categorie']); // nello specifico recupero gli id
In effetti, l'inserimento a DB sembra funzionare. Infatti sul DB, nella tabella negozi, me li salva in un campo con una dicitura del genere
a:2:{i:0;s:1:"8";i:1;s:2:"18";}
Ora li voglio recuperare e lo faccio con la funzione unserialize in questo modo
$categoria_id = $sql_ris['categoria_id']; // salvo tutto nella variabile $categoria_id dopo la chiamata a db e mysql_fetch_array
$single_value=unserialize($categoria_id); // qui unserializzo
Ora se stampo a video $single_value mi restituisce un array del tipo
Array ( [0] => 8 [1] => 18 )
Il problema è che io dovrei confrontare ogni singolo valore (id) di questo array con gli id delle categorie che genero dinamicamento per creare l'elenco di tutte le categorie, in modo da rendere checked quelle corrispondenti.
Ma se faccio questo confronto
if($single_value==$id_categoria) ...
non ottengo alcun risultato.
Potresti gentilmente darmi delle dritte, sempre se ciò che ho scritto risulta comprensibile.
Grazie
Pino
ho un problema simile con i checkbox multivalore inseriti all'interno di un cms.
I checkbox della form si riferiscono a categorie tipo Moda, Alimenti, Sport, Libri ecc. e li genero dinamicamente con un ciclo while pescando da una tabelle del db. Ora se chi lavora sul cms seleziona i suoi checkbox, perché li associa a un determinato negozio, io li recupero in questo modo:
$categoria = serialize($_POST['categorie']); // nello specifico recupero gli id
In effetti, l'inserimento a DB sembra funzionare. Infatti sul DB, nella tabella negozi, me li salva in un campo con una dicitura del genere
a:2:{i:0;s:1:"8";i:1;s:2:"18";}
Ora li voglio recuperare e lo faccio con la funzione unserialize in questo modo
$categoria_id = $sql_ris['categoria_id']; // salvo tutto nella variabile $categoria_id dopo la chiamata a db e mysql_fetch_array
$single_value=unserialize($categoria_id); // qui unserializzo
Ora se stampo a video $single_value mi restituisce un array del tipo
Array ( [0] => 8 [1] => 18 )
Il problema è che io dovrei confrontare ogni singolo valore (id) di questo array con gli id delle categorie che genero dinamicamento per creare l'elenco di tutte le categorie, in modo da rendere checked quelle corrispondenti.
Ma se faccio questo confronto
if($single_value==$id_categoria) ...
non ottengo alcun risultato.
Potresti gentilmente darmi delle dritte, sempre se ciò che ho scritto risulta comprensibile.
Grazie
Pino