Ho un form di tipo checkbox da cui si possono inserire dati in un database, essendo checkbox possono essenre inseriti anche di uno x volta.
1 - come faccio a inserire un array (in questo caso può avere fino a 5 valori contemporaneamente) nel database? ho usato implode ma nn mi pare la soluzione + adatta....
2 - se volessi fare una ricerca con select usando i 5 campi del checkbox (es. amore, amicizia, natura, storie di vita, varie) come faccio a selezionarli dal database, se prima li ho trasformati in stringa? x questo chiedo se c'è un altro modo...
questo è il codice...non mi trova mai niente...
<?
include("connection.inc");
$dbname="utenti";
mysql_select_db('utenti',$conn);
function visualizzaform(){
echo "<form name=\"search\" action=\"soggetto.php\" method=\"post\">Cerca per soggetto dell'opera: <select name=\"filter\" size=\"1\">";
echo "<option name=\"soggetto\" value=\"0\">Tutte</option>";
echo "<option name=\"soggetto\" value=\"1\">Amicizia</option>";
echo "<option name=\"soggetto\" value=\"2\">Amore</option>";
echo "<option name=\"soggetto\" value=\"3\">Natura</option>";
echo "<option name=\"soggetto\" value=\"4\">Storie di Vita</option>";
echo "<option name=\"soggetto\" value=\"5\">Vario</option>";
echo "</select>";
echo "<input type=\"submit\" name=\"cerca\" value=\"cerca\" />
";
echo "</form>";
}
if (!isset($_POST['cerca'])) {
visualizzaform();
} else if (isset($_POST['cerca'])) {
$scelta= $_POST['filter'];
$sql="SELECT * FROM opere WHERE soggetto LIKE '%$scelta%'";
$risultato= mysql_query($sql);
$total= mysql_num_rows($risultato);
if ($total == 0) {
echo "Non ho trovato niente!";
}else{
while( $r = mysql_fetch_array($risultato)){
echo $r['Autore'] . "
";
echo $r['Soggetto'] . "
";
echo $r['Genere'] . "
";
echo $r['Composizione'] . "
";
}
}
}
?>