[PHP]Switch Problem

MiD

macht munter
ID: 217060
L
21 April 2006
4.390
243
Hi,

ich brauche wieder Hilfe :LOL:
Ich bin dabei einen simplen Umrechner zuprogrammieren (vorerst, soll später ausgebaut werden).

Fehlermeldung schrieb:
Parse error: parse error, unexpected T_SWITCH in /home/loseengine_service4lose_de/www/euroumrechner.php on line 13

Switch Part:
PHP:
switch($rate)
{
case "DM":
echo "dies sind $ergebnisDM Euro"; break;
case "Peseten":
echo "das sind $ergebnisPes Euro"; break;
case "Franc":
echo "dies sind $ergebnisFranc Euro"; break;
}

Stück vom Formular:
PHP:
<select size=1 name=rate>
<Option value="DM">DM
<Option value="Franc">Franc
<Option value="Pseten">Peseten
<Option value="Euro">Euro
</select><p>
<b>Betrag</b><br />

Wo liegt der Fehler? bzw. Was habe ich falsch gemacht? Wie lautet es richtig?
 
HTML:
<select size=1 name=rate>
<Option value="DM">DM</option>
<Option value="Franc">Franc</option>
<Option value="Pseten">Peseten</option>
<Option value="Euro">Euro</option>
</select>

PHP:
if($_POST['rate']){
switch($_POST['rate'])
{
case "DM":
echo "dies sind ".$ergebnis." DM Euro"; break;
case "Peseten":
echo "das sind ".$ergebnis." Pes Euro"; break;
case "Franc":
echo "dies sind ".$ergebnis." Franc Euro"; break;
}  }

funzt das? oder hab ich noch was übersehen ^^?
 
  • Like
Reaktionen: MiD
ich mach das sonst immer mit hidden und sent ^^
default hab ich auch weggelassen

aber hast recht, werd in zukunft mehr sorfalt walten lassen
 
Okay, wusste ich nicht.

PHP:
$ergebnisDM=$betrag*0.51;
$ergebnisPes=$betrag*0.006010;
$ergebnisFranc=$betrag*0.15245

Mehr steht nicht darüber.

PS: Die if-Anwendung wollte ich vermeiden, da ich das "switch" kennen lernen will.
 
PHP:
$ergebnisDM=$betrag*0.51;
$ergebnisPes=$betrag*0.006010;
$ergebnisFranc=$betrag*0.15245;


semikolon vergessen
 
Semikolon in Zeile 12 fehlt ;)

edit:
Genau, sag ich ja :mrgreen:
 
und irgendwie fehlt dann halt was VOR dem Switch. Das Switch kam für PHP an einer "ungünstigen" Stelle.

Semikolon fehlt
 
  • Like
Reaktionen: MiD
Funktioniert, danke :)

T_XYZ heißt also VOR, was heißt NACH?

bzw. gibt es eine Liste, wo alle Fehlermeldungen aufgelistet sind?
 
da stand halt unerwartetes bla,bla.

d.h. im klartext, das hat da nix zu suchen.

warum hat was an ner stelle nix zu suchen? weil irgendwas davor nicht ordentlich beendet worden ist.

mal ganz banal erklärt (jetzt haun mich wieder alle ^^)

so pauschales vor und danach gibts nicht.

entweder isses in der zeile oder halt davor.
 
T_XYZ heißt also VOR, was heißt NACH?
Les einfach die Fehlermeldung. Da steht "nicht-erwartetes T_XYZ", d.h. das T_XYZ ist dort falsch und es fehlt etwas anderes an dieser Stelle. Du musst dir also immer vor der Stelle angucken, was denn da fehlt.
bzw. gibt es eine Liste, wo alle Fehlermeldungen aufgelistet sind?
Kann sein, im Manual, weiß aber ned. Brauchst du ja auch ned, weil die Fehlermeldungen von PHP so aussagekräftig sind, das alles drinsteht.