Alcuni server PHP5 non sono in grado di ricevere dei $_POST da campi SELECT MULTIPLE in HTML (con cui utilizzare il metodo descritto in un altro post: LINK). Se si prova a visualizzare la variabile passata è vuota. Per risolvere il problema, si può usare il seguente codice:
HTML-PHP (FORM)
//se si modifica una scheda già registrata nel database tiriamo fuori i valori memorizzati nel campo del database
$associati = explode (’|', $op['associati']);
$query=”SELECT * FROM tabella_operatori WHERE valid=’1′ ORDER BY nome_Campo”;
$result = mysql_query($query, $db);
while ($operator = mysql_fetch_array($result)) {
if (in_array($operator["id_op"],$associati))
$selezionato = ‘checked=”checked”‘;
else
$selezionato = NULL;
echo “<input type=\”checkbox\” name=\”chkexpert”.$count.”\” value=\”$operator[id]\” $selezionato>$operator[nome_campo]<br />\n”;
$count++;<br />\n”; }
//qui passo come campo nascosto il conteggio
echo “<input name=\”hidSubmit\” type=\”hidden\” id=\”hidSubmit2\” value=\”".$count.”\”>”;
PHP – SQL (salvataggio nel database)
$count = $_POST['hidSubmit'];
$contaon = 0;
for($i=0;$i<$count;$i++){
if (isset($_POST['chkexpert'.$i.'']))
$contaon++;
}
if ($contaon > 0) {
$associati = “|”;
for($i=0;$i<$count;$i++){
if (isset($_POST['chkexpert'.$i.'']))
$associati .= $_POST['chkexpert'.$i.''].’|';
}
$associati_string = “, associati=’$associati’ “; //stringa per salvare i dati nel campo “associati” del Database
}
else
$associati_string = NULL;







