Grazie per la risposta.
In effetti avevo già installato mamp sul mio mac e cambiando l'estensione in .php ed eseguendo il file da localhost ha iniziato a funzionare.
Ora però avrei qualche domanda di chiarimento. Ho scritto questo per continuare a fare la mia calcolatrice:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE>Calcolatrice PHP</TITLE>
</HEAD>
<BODY>
<h1>Calcolatrice PHP</h1>
<?php
session_start();
if(!isset($valUno)) echo "0";
else echo $valUno;
$pulsanti = Array(
"cancella",
"piuomeno",
"percentuale",
"diviso",
"sette",
"otto",
"nove",
"per",
"quattro",
"cinque",
"sei",
"meno",
"uno",
"due",
"tre",
"piu",
"zero",
"virgola",
"uguale",
);
for($i=0;$i<count($pulsanti);$i++){
if($_GET[$pulsanti[$i]] != ""){
$oper = cosaFare($_GET[$pulsanti[$i]]);
if($oper === "operazione"){
}
else if($oper === "numero"){
$valUno = appendString($_GET[$pulsanti[$i]],$_SESSION["valUno"]);
echo $valUno;
$_SESSION["valUno"] = $valUno;
}
}
}
if($_GET["val1"] != "" && $_GET["val2"] != "")
echo addiziona($_GET["val1"],$_GET["val2"]);
else
?>
<output form="tastiera" name="risultato" for="cinque"></br>
<form action="calcolatrice.php" method="get" id="tastiera">
<input type="submit" name="<?php echo $pulsanti[0]; ?>" value="AC" style="width:30px">
<input type="submit" name="<?php echo $pulsanti[1]; ?>" value="+/-" style="width:30px">
<input type="submit" name="<?php echo $pulsanti[2]; ?>" value="%" style="width:30px">
<input type="submit" name="<?php echo $pulsanti[3]; ?>" value="÷" style="width:30px"></br>
<input type="submit" name="<?php echo $pulsanti[4]; ?>" value="7" style="width:30px">
<input type="submit" name="<?php echo $pulsanti[5]; ?>" value="8" style="width:30px">
<input type="submit" name="<?php echo $pulsanti[6]; ?>" value="9" style="width:30px">
<input type="submit" name="<?php echo $pulsanti[7]; ?>" value="x" style="width:30px"></br>
<input type="submit" name="<?php echo $pulsanti[8]; ?>" value="4" style="width:30px">
<input type="submit" name="<?php echo $pulsanti[9]; ?>" value="5" style="width:30px">
<input type="submit" name="<?php echo $pulsanti[10]; ?>" value="6" style="width:30px">
<input type="submit" name="<?php echo $pulsanti[11]; ?>" value="-" style="width:30px"></br>
<input type="submit" name="<?php echo $pulsanti[12]; ?>" value="1" style="width:30px">
<input type="submit" name="<?php echo $pulsanti[13]; ?>" value="2" style="width:30px">
<input type="submit" name="<?php echo $pulsanti[14]; ?>" value="3" style="width:30px">
<input type="submit" name="<?php echo $pulsanti[15]; ?>" value="+" style="width:30px"></br>
<input type="submit" name="<?php echo $pulsanti[16]; ?>" value="0" style="width:64px">
<input type="submit" name="<?php echo $pulsanti[17]; ?>" value="," style="width:30px">
<input type="submit" name="<?php echo $pulsanti[18]; ?>" value="=" style="width:30px"></br>
</form>
<?php
function aggiorna(){
echo "aggiornato";
flush();
}
function addiziona($var1,$var2){
$tot = $var1 + $var2;
return $var1." + ".$var2." = ".$tot."<br>";
}
function cosaFare($string){
if($string == "AC" || $string == "+/-" || $string == "%" || $string == "÷" || $string == "x" || $string == "-" || $string == "+" || $string == "=")
return "operazione";
else return "numero";
}
function appendString($string,$val){
return $val.$string;
}
?>
</BODY>
</HTML>
Ho qualche dubbio a riguardo...
Il metodo get va bene per questo intento? Ogni volta che clicco un bottone la pagina viene ricaricata perciò mi chiedevo se ci fosse stato un modo per fare la stessa cosa senza ricaricare ogni volta la pagina. Ho pensato di usare un output html come se fosse una textview e aggiornare solo quella quando serve. Invece di usare input type submit volevo usare un button ma non riesco a fargli richiamare la funzione php scrivendola in onclick. In pratica il codice seguente:
<output form="tastiera" name="risultato" for="cinque"></br><form action="calcolatrice.php" method="get" id="tastiera">
<input type="button" onclick="aggiorna();" name="zero" value="0" style="width:64px"> //l'istruzione onclick non funziona
</form>
<?php
function aggiorna(){
echo "aggiornato";
flush();
//cosa dovrei mettere qua per aggiornare l'output?
}
?>
non funziona! Qualche consiglio?