Checkbox abfragen
bearbeitet von
@@Sara
> ~~~php
> if ($_POST['tagesPreis'] == "") {
> $tagesPreis = "";
> }else {
> $tagesPreis = $_POST["tagesPreis"];
> }
> ~~~
Abgesehen davon, dass diese IF-Abfrage nicht das tut, was du willst, macht sie auch nicht wirklich Sinn.
Wenn `$_POST['tagesPreis'] == ""`{: .language-php}, dann setze `$tagesPreis`{: .language-php} auf `""`{: .language-php}, also auf den Wert von `$_POST['tagesPreis']`{: .language-php};
andernfalls auf den Wert von `$_POST['tagesPreis']`{: .language-php}?
`$tagesPreis = $_POST['tagesPreis'];`{: .language-php} hätte dasselbe bewirkt.
Wie bereits behandelt bewirkt `isset()`{: .language-php} mehr als `==`{: .language-php}.
> ~~~php
> if(!isset($_POST['tagesPreis'])) {
> $tagesPreis = "";
> }else {
> $tagesPreis = $_POST["tagesPreis"];
> }
> ~~~
Du konntest dich noch nicht [an diese Schreibweise gewöhnen](https://forum.selfhtml.org/self/2015/nov/4/wert-ersetzten/1653730#m1653730)?
Die bietet sich immer dann an, wenn im THEN- und im ELSE-Zweig eine Zuweisung zur selben Variablen mit unterschiedlichen Werten erfolgt:
`$tagesPreis = !isset($_POST['tagesPreis']) ? $tagesPreis = '' : $tagesPreis = $_POST['tagesPreis'];`{: .language-php}
wäre dasselbe in kompakt.
Zum Umkopieren hatte Matthias ja schon was gesagt.
Noch was zur Schreibweise: Warum schreibst du einmal `$_POST['tagesPreis']`{: .language-php}, ein anderess Mal `$_POST["tagesPreis"]`{: .language-php}?
[Einfache und doppelte Anführungszeichen](http://php.net/manual/de/language.types.string.php) haben in PHP unterschiedliche Bedeutung. In aller Regel willst du einfache verwenden.
LLAP 🖖
--
„Wir haben deinen numidischen Schreiber aufgegriffen, o Syndicus.“
„Hat auf dem Forum herumgelungert …“
(Wachen in Asterix 36: Der Papyrus des Cäsar)