Ciao a tutti. Sono nuovo del forum e sto studiando da poco PHP. Ho un problema con un esercizio.
Il testo dell'esercizio è il seguente:
Crea un form che mostri i piatti ordinabili in un ipotetico ristorante online. Il menu contiene antipasti, primi, secondi, contorni e bevande. A seconda
della scelta effettuata, deve mostrare il prezzo complessivo utilizzando la tecnica postback.
il mio script è il seguente:
<!DOCTYPE html>
<html>
<head>
<title> Ristorante </title>
</head>
<body style="text-align: center; background-color: #000080; color: white;">
<h1>Menu</h1>
<hr/>
<form action="<?php echo $_SERVER["PHP_SELF"]; ?>" method="post">
<h2>Antipasti</h2>
<select name="antipasti">
<option value="salumi" name="salumi">Salumi</option>
<option value="formaggi" name="formaggi">Formaggi</option>
</select>
<br/>
<h2>Primi</h2>
<select name="primi">
<option value="agloli" name="agloli">Spaghetti aglio olio</option>
<option value="carbo">Spaghetti alla carbonara</option>
</select>
<br/>
<h2>Secondi</h2>
<select name="secondi">
<option value="filetto">Filetto alla griglia</option>
<option value="cozze">Zuppa di cozze</option>
</select>
<br/>
<h2>Contorni</h2>
<select name="contorni">
<option value="insalata">Insalata</option>
<option value="patate">Patate al forno</option>
</select>
<br/>
<h2>Bevande</h2>
<select name="bevande">
<option value="acqua">Acqua</option>
<option value="vino">Vino</option>
</select>
<p><input type="submit" name="invio" value="Invia"/>
<input type="reset" name="annulla" value="Cancella"/>
</form>
<?php
/*
Autore: Vincenzo Iannucci
Data: 09/12/2018
Titolo: Crea un form che mostri i piatti ordinabili in un ipotetico ristorante
online. Il menu contiene antipasti, primi, secondi, contorni e bevande. A seconda
della scelta effettuata, deve mostrare il prezzo complessivo utilizzando la tecnica
postback.
*/
if(isset($_POST["invio"]))
{
//antipasti
$antipasti = $_POST["antipasti"];
$ap1 = $_POST["ap1"];
$ap2 = $_POST["ap2"];
//primi
$primi = $_POST["primi"];
$p1 = $_POST["agloli"];
$p2 = $_POST["carbo"];
//secondi
$secondi = $_POST["secondi"];
$s1 = $_POST["filetto"];
$s2 = $_POST["cozze"];
//contorni
$contorni = $_POST["contorni"];
$c1 = $_POST["insalata"];
$c2 = $_POST["patate"];
//bevande
$bevande = $_POST["bevande"];
$b1 = $_POST["acqua"];
$b2 = $_POST["vino"];
$listinoAntipasti = array($ap1 => 10.50, $ap2 => 11.50);
$listinoPrimi = array($p1 => 10.50, $p2 => 10);
$listinoSecondi = array($s1 => 12.50, $s2 => 12);
$listinoContorni = array($c1 => 5.50, $c2 => 5);
$listinoBevande = array($b1 => 1, $b2 => 15.50);
$tot = 0;
for ($i = 0; $i < 2; $i++)
{
if ($antipasti == $listinoAntipasti[$i]) {
$tot += $listinoAntipasti[$i];
}
else if ($primi == $listinoPrimi[$i]) {
$tot += $listinoPrimi[$i];
}
else if ($secondi == $listinoSecondi[$i]) {
$tot += $listinoSecondi[$i];
}
else if ($contorni == $listinoContorni[$i]) {
$tot += $listinoContorni[$i];
}
else if($bevande == $listinoBevande[$i]) {
$tot += $listinoBevande[$i];
}
}
echo "Totale: $tot";
}
?>
</body>
</html>
Vorrei sapere perchè mi da i seguenti errori:
Notice: Undefined index: ap1 in C:\xampp\htdocs\PHP\ristorante.php on line 61
Notice: Undefined index: ap2 in C:\xampp\htdocs\PHP\ristorante.php on line 62
Notice: Undefined index: agloli in C:\xampp\htdocs\PHP\ristorante.php on line 65
Notice: Undefined index: carbo in C:\xampp\htdocs\PHP\ristorante.php on line 66
Notice: Undefined index: filetto in C:\xampp\htdocs\PHP\ristorante.php on line 69
Notice: Undefined index: cozze in C:\xampp\htdocs\PHP\ristorante.php on line 70
Notice: Undefined index: insalata in C:\xampp\htdocs\PHP\ristorante.php on line 73
Notice: Undefined index: patate in C:\xampp\htdocs\PHP\ristorante.php on line 74
Notice: Undefined index: acqua in C:\xampp\htdocs\PHP\ristorante.php on line 77
Notice: Undefined index: vino in C:\xampp\htdocs\PHP\ristorante.php on line 78
Notice: Undefined offset: 0 in C:\xampp\htdocs\PHP\ristorante.php on line 90
Notice: Undefined offset: 0 in C:\xampp\htdocs\PHP\ristorante.php on line 93
Notice: Undefined offset: 0 in C:\xampp\htdocs\PHP\ristorante.php on line 96
Notice: Undefined offset: 0 in C:\xampp\htdocs\PHP\ristorante.php on line 99
Notice: Undefined offset: 0 in C:\xampp\htdocs\PHP\ristorante.php on line 102
Notice: Undefined offset: 1 in C:\xampp\htdocs\PHP\ristorante.php on line 90
Notice: Undefined offset: 1 in C:\xampp\htdocs\PHP\ristorante.php on line 93
Notice: Undefined offset: 1 in C:\xampp\htdocs\PHP\ristorante.php on line 96
Notice: Undefined offset: 1 in C:\xampp\htdocs\PHP\ristorante.php on line 99
Notice: Undefined offset: 1 in C:\xampp\htdocs\PHP\ristorante.php on line 102
Totale: 0
Grazie anticipatamente per le risposte!!