| PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Post your PHP questions here! |
 |

11-03-2008, 18:39
|
|
alexeddie
Newbie
|
|
Registriert seit: Mar 2008
Beiträge: 5
|
|
Verständnisfrage
Hallo,
nachdem ich heute unsanft in einem anderen PHP Forum auf die "Schnauze" gefallen bin möchte ich es hier nocheinmal versuchen.
Ich habe eine html-Datei, sozusagen ein kleines Bestellformular.
Die Werte werden in eine php-Datei übergeben und sollen von dort aus per Mail weitergeleitet werden.
Letztgenannter Punkt ist mir schleierhaft aber nachdem im anderen PHP-Forum diese Frage u.a. dazu geführt hatte, das mein Thread unbeantwortet sofort wieder geschlossen wurde werde ich dies notgedrungen ausklammern.
In Zeile 27:
if ($geldsumme <= 20) {$geldsummen=$geldsumme + 2.3} ;
kommt dieser Fehler.
Parse error: syntax error, unexpected '}' in E:\Programme\xampp\htdocs\xampp\php-beispiele\09_Formular-Auswertung\rechnung-post.php on line 27
Nach meiner Literatur wird der if - Befehl wie folgt ausgeführt
if ($variable UNTERSCHEIDER $variable2) {befehl 1 befehl2}
Mir würde es sehr weiterhelfen wenn ich nicht als Antwort nur erhalten würde "Lies dies und das" denn ich mache seit 7 Tagen nichts anderes.
Danke.
<?php
$anrede = $_POST["anrede"];
$vorname = $_POST["vorname"];
$nachname = $_POST["nachname"];
$strasse = $_POST['strasse'];
$plzort = $_post['plzort'];
$tel = $_post['tel'];
define ("MWST",19);
define ("WAEHRUNG"," Euro");
$bez1 = $_POST["bez1"];
$bez2 = $_POST["bez2"];
$bez3 = $_POST["bez3"];
$anz1 = $_POST["anz1"];
$anz2 = $_POST["anz2"];
$anz3 = $_POST["anz3"];
$ep1 = 5;
$ep2 = $_POST["ep2"];
$ep3 = $_POST["ep3"];
$preis1 = $anz1*$ep1;
$preis2 = $anz2*$ep2;
$preis3 = $anz3*$ep3;
define ("bestellwert",20);
define ("rabattwert",25);
$geldsumme = $preis1+$preis2+$preis3;
if ($geldsumme <= 20) {$geldsummen=$geldsumme + 2.3} ;
$geldsumme2 = $geldsumme-$rabatt+$geldsummen;
$tara = $geldsumme2/100*MWST;
?>
<head>
<style type="text/css">
<!--
.u {border-bottom-width:2px; border-bottom-style:solid; border-bottom-color:#000000; }
.f {font-weight: bold;}
-->
</style>
</head>
<body>
<h1>Rechnung</h1>
<p align="right"><?php echo date("Y-m-d").", ".date("H:i")." Uhr" ?></p>
<?php echo "<b>$anrede<br>$vorname $nachname</b><hr>" ?>
<table width="100%">
<tr>
<td><?php echo "$anz1 " ?></td>
<td><?php echo "$bez1 " ?></td>
<td>à <?php echo "$ep1 ".WAEHRUNG." = " ?></td>
<td align="right"><?php echo number_format($preis1,2).WAEHRUNG ?></td>
</tr>
<tr>
<td><?php echo "$anz2 " ?></td>
<td><?php echo "$bez2 " ?></td>
<td>à <?php echo "$ep2 ".WAEHRUNG." = " ?></td>
<td align="right"><?php echo number_format($preis2,2).WAEHRUNG ?></td>
</tr>
<tr>
<td class="u"><?php echo "$anz3 " ?></td>
<td class="u"><?php echo "$bez3 " ?></td>
<td class="u">à <?php echo "$ep3 ".WAEHRUNG." = " ?></td>
<td class="u" align="right"><?php echo number_format($preis3,2).WAEHRUNG ?></td>
</tr>
<tr>
<td> </td>
<td> </td>
<td class="f">Summe</td>
<td class="f" align="right"><?php echo number_format($geldsumme,2).WAEHRUNG ?></td>
</tr>
<tr>
<td> </td>
<td> </td>
<td><?php echo "davon MwSt (".MWST."%)" ?></td>
<td align="right"><?php echo number_format($tara,2).WAEHRUNG; ?></td>
</tr>
</TABLE>
</body>
|

11-03-2008, 18:44
|
unset
 Moderator
|
|
Registriert seit: Jan 2007
Ort: Düsseldorf
Beiträge: 3.778
|
|
Dann erkenne nun den Unterschied zwischen deiner Lektüre und dem, was du geschrieben hast. Geh es mal Zeichen für Zeichen durch.
P.S.: Wir haben hier PHP-Tags!
|

11-03-2008, 18:52
|
|
alexeddie
Newbie
|
|
Registriert seit: Mar 2008
Beiträge: 5
|
|
if ($geldsumme <= 20) {$geldsummen=$geldsumme + 2.3} ;
Wenn ich es zu meiner Lektüre Schritt für Schritt durchgehe dann fällt mir auf das ich bei dem If-Befehl nur das "True-Attribut" mit einem Wert belegt. Aber vielleicht begreife ich es auch falsch aber ich möchte wenn der Wert größer als 20 ist die Variable Geldsumme um den Wert 2.3 erhöhen.
Vielleicht sitz ich auch auf der Leitung
|

11-03-2008, 18:54
|
unset
 Moderator
|
|
Registriert seit: Jan 2007
Ort: Düsseldorf
Beiträge: 3.778
|
|
Konzentrier dich mal auf das Ende der Zeile. Wie muss eine Anweisung enden? Wie endet deine?
|

11-03-2008, 19:01
|
|
alexeddie
Newbie
|
|
Registriert seit: Mar 2008
Beiträge: 5
|
|
Danke für die Antwort.
Eine PHP-Zeile muß mit Semikolon ; enden.
Und der ganze PHP-Code muß mit <?php beginnen und mit ?>
enden.
Nach meinen Erfahrungen im anderen Forum hoffe ich nun darauf das dieser Beitrag nicht sofort geschlossen wird.
Denn klar, zuerst lesen dann schreiben. Gelesen habe ich aber wohl nicht verstanden.
|

11-03-2008, 19:04
|
|
TroX
Registrierter Benutzer
|
|
Registriert seit: Dec 2006
Ort: Schweiz
Beiträge: 156
|
|
Zitat:
Original geschrieben von alexeddie
Danke für die Antwort.
Eine PHP-Zeile muß mit Semikolon ; enden.
|
PHP-Code:
<?php
echo "123";
if( $a == $b );
{;
$a++;
};
?>
also?
|

11-03-2008, 19:05
|
unset
 Moderator
|
|
Registriert seit: Jan 2007
Ort: Düsseldorf
Beiträge: 3.778
|
|
Eine Anweisung wird mit einem Semikolon abgeschlossen. Ein Anweisungsblock wird aber von geschweiften Klammern begrenzt! Folglich muss dein Code so aussehen:
PHP-Code:
if ($geldsumme <= 20) {$geldsummen=$geldsumme + 2.3; }
oder für anfänger direkt etwas leserlicher
PHP-Code:
if($geldsumme <= 20) {
$geldsummen = $geldsumme + 2.3;
}
|

11-03-2008, 19:11
|
|
alexeddie
Newbie
|
|
Registriert seit: Mar 2008
Beiträge: 5
|
|
Danke Danke Danke.
Das ist es. Warum geht das Galileocomptung PHP4 Buch nicht darauf ein.
Trozdem fand ich es sehr nett für die schnelle und umkomplizierte Art wie einem hier geholfen wird.
Ich hatte da ja heute andere Erfahrungen
|

11-03-2008, 19:16
|
unset
 Moderator
|
|
Registriert seit: Jan 2007
Ort: Düsseldorf
Beiträge: 3.778
|
|
Normalerweise haben die Leute die Erfahrung hier
|

11-03-2008, 19:18
|
|
alexeddie
Newbie
|
|
Registriert seit: Mar 2008
Beiträge: 5
|
|
Vielen Dank usnet.
Den Rest ( prüfen ob die Eingaben korrekt sind) und Schicken der Eingaben per Mail werd ich wohl noch hinbekommen.
Ich hänge da zwar auch schon seit Tagen aber ich möchte eure Geduld hier nicht zu sehr strapazieren
|

12-03-2008, 08:44
|
|
frabron
Newbie
|
|
Registriert seit: Apr 2004
Beiträge: 113
|
|
Hallo alexeddie,
Generell finde ich es für Anfänger empfehlenswert sich an bestimmte Coding Styles und Standards zu halten. Gerade dein in eine Zeile gequetschtes if-Statement ist da ein gutes Beispiel. Hättest du deinen Code übersichtlicher geschrieben, so wie in unsets Beispiel, wäre die Fehlermeldung zumindest in der Zeilenzahl anders ausgefallen und dir wäre der Fehler wohl direkt aufgefallen.
Zu dem Thema Coding Styles kannst du dir mal http://framework.zend.com/manual/en/...ing-style.html durchlesen. Dort sind einige Beispiele aufgeführt, wie man Code in Quelltext formatiert. Das ist natürlich keine Bibel, aber es hilft einem sehr, wenn man einen einheitlichen Stil pflegt.
Zum Thema mail hilft dir sicherlich das offizielle PHP Handbuch weiter und die unzähligen Beiträge zu dem Thema hier im Forum. Mit diesen Informationen sollte es Dir eigentlich nicht allzu schwer fallen, deine Daten per mail zu versenden.
|

12-03-2008, 09:54
|
|
H2O
PHP Junior
|
|
Registriert seit: Jul 2007
Beiträge: 937
|
|
Das ist zwar ein guter Artikel, für Anfänger allerdings manchmal etws schwer verständlich. Deshalb noch ein Hinweis auf das einfach zu verstehende Tutorial unseres Obermuftis zum Styling.
__________________
Gruss
H2O
|
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
|
| Themen-Optionen |
|
|
| Thema bewerten |
|
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
|
PHP News
|