Allora lo script funziona perfettamente, ho un problema però: devo controllare il formato di molti form e solo se tutti sono corretti li inserisco nel db mediante query, altrimenti no e segnalo di ricontrollare i campi. Qualcuno sa dirmi come fare??
codice:
<?php
var_dump($_POST);
$id_piatto= $_POST['id_piatto'];
$alimento1= $_POST['alimento1'];
$quantità= $_POST['quantità'];
$kcal= $_POST['kcal'];
$proteine= $_POST['proteine'];
$carboidrati=$_POST['carboidrati'];
$grassi= $_POST['grassi'];
$acqua=$_POST['acqua'];
$zuccheri=$_POST['zuccheri'];
$fibre=$_POST['fibre'];
$amminoacidi=$_POST['amminoacidi'];
$alimento2= $_POST['alimento2'];
$quantità2= $_POST['quantità2'];
$kcal2= $_POST['kcal2'];
$proteine2= $_POST['proteine2'];
$carboidrati2=$_POST['carboidrati2'];
$grassi2= $_POST['grassi2'];
$acqua2=$_POST['acqua2'];
$zuccheri2=$_POST['zuccheri2'];
$fibre2=$_POST['fibre2'];
$amminoacidi2=$_POST['amminoacidi2'];
$alimento3= $_POST['alimento3'];
$quantità3= $_POST['quantità3'];
$kcal3= $_POST['kcal3'];
$proteine3= $_POST['proteine3'];
$carboidrati3=$_POST['carboidrati3'];
$grassi3= $_POST['grassi3'];
$acqua3=$_POST['acqua3'];
$zuccheri3=$_POST['zuccheri3'];
$fibre3=$_POST['fibre3'];
$amminoacidi3=$_POST['amminoacidi3'];
$host = "localhost";
$pass = "pw";
$user = "r";
$db = "pippo";
$connessione = mysql_connect($host,$user,$pass) or die("Connessione non avvenuta!!!");
$database = mysql_select_db($db,$connessione) or die ("Database non trovato!!!");
//sezione per il controllo del formato dei numeri inseriti. Si possono inserire solo numeri separati da virgola con al max 2 cifre dopo la virgola.
if(preg_match('/^\d+(,\d{1,2}){0,1}$/',$_POST['quantità']=trim($_POST['quantità']))){
//Inserimento corretto
}else{
//inserimento non corretto
}
$sql = "INSERT INTO piatti(`id_piatto`) VALUES ('$id_piatto')";
$result = mysql_query($sql) or die("Query non eseguita");
$sql3 = " INSERT INTO valori SET id_piatto = '$id_piatto'
,alimento1 ='$alimento1', quantità= '$quantità', kcal= '$kcal', proteine ='$proteine', carboidrati ='$carboidrati', grassi ='$grassi', acqua ='$acqua', zuccheri = '$zuccheri', fibre = '$fibre', amminoacidi = '$amminoacidi'
,alimento2 ='$alimento2', quantità2= '$quantità2',kcal2= '$kcal2', proteine2 ='$proteine2', carboidrati2 ='$carboidrati2', grassi2 ='$grassi2', acqua2 ='$acqua2', zuccheri2 = '$zuccheri2', fibre2 = '$fibre2', amminoacidi2 = '$amminoacidi2'
,alimento3 ='$alimento3', quantità3= '$quantità3',kcal3= '$kcal3', proteine3 ='$proteine3', carboidrati3 ='$carboidrati3', grassi3 ='$grassi3', acqua3 ='$acqua3', zuccheri3 = '$zuccheri3', fibre3 = '$fibre3', amminoacidi3 = '$amminoacidi3' ";
$result3 = mysql_query($sql3) or die("Query non eseguita2");
?>
</html>
voglio cioè controllare quantità, grassi, kcal...e solo alla fine, se è tutto ok, inserirli nel db. Ho provato con and ma non funziona.
Grazie a tutti