Spambots, CSRF token
bearbeitet von Raketenwilli> Und die Emails, die mich erreichen, haben die Meldung:
> Spambot - Kein valides Subject
Ok. Untersuchung:
Um zu dieser Ausgabe vorzudringen muss der kleine Mann namens PHP (Peter Hat Programm) folgende Daten vorfinden:
~~~
if($_POST['formsend']) {
~~~
* `$_POST['formsend']` ist truly (nicht: false, null, 0 oder '')
~~~
if(is_null($name) || $name == '') {
~~~
* **UND NICHT** $name ist null oder leer.
~~~
} elseif(
is_null($email)
|| filter_var( $email,FILTER_VALIDATE_EMAIL) == false
) {
~~~
* **UND** `$email` ist **nicht** `null`
* **UND** filter_var( $email,FILTER_VALIDATE_EMAIL) ist **nicht** `falsy`
~~~
} elseif($_SESSION['token'] != $_POST['token']) {
~~~
* **UND** `$_SESSION['token']` und `$_POST['token']` stimmen **grob** überein - was aber auch zutrifft, wenn diese jeweils entweder leer, 0 oder `false` sind…
~~~
} elseif($nur_ziffern_ausgefuellt) {
~~~
* **UND** `$nur_ziffern_ausgefuellt` ist `truely`. Was aber z.B. auch zutrifft, wenn es „0“ (Den String „0"!) enthält.
**Und jetzt geh debuggen:** Lass Dir ausgeben, was drin steht. Vergleiche das mit Deinen Erwartungen.
---
**Begriffe:**
* truely: Ein nicht typsicherer Vergleich mit true matcht: `if ( $foo )`
* falsy : Ein nicht typsicherer Vergleich mit false matcht. `if ( ! $foo )`
Spambots, CSRF token
bearbeitet von Raketenwilli> Und die Emails, die mich erreichen, haben die Meldung:
> Spambot - Kein valides Subject
Ok. Untersuchung:
Um zu dieser Ausgabe vorzudringen muss der kleine Mann namens PHP (Peter Hat Programm) folgende Daten vorfinden:
~~~
if($_POST['formsend']) {
~~~
* `$_POST['formsend']` ist truly (nicht: false, null, 0 oder '')
~~~
if(is_null($name) || $name == '') {
~~~
* **UND NICHT** $name ist null oder leer.
~~~
} elseif(
is_null($email)
|| filter_var( $email,FILTER_VALIDATE_EMAIL) == false
) {
~~~
* **UND** `$email` ist **nicht** `null`
* **UND** filter_var( $email,FILTER_VALIDATE_EMAIL) ist **nicht** `falsy`
~~~
} elseif($_SESSION['token'] != $_POST['token']) {
~~~
* **UND** `$_SESSION['token']` und `$_POST['token']` stimmen überein, was aber auch zutrifft, wenn diese entweder leer, 0 oder `false` sind…
~~~
} elseif($nur_ziffern_ausgefuellt) {
~~~
* **UND** `$nur_ziffern_ausgefuellt` ist `truely`. Was aber z.B. auch zutrifft, wenn es „0“ (Den String „0"!) enthält.
**Und jetzt geh debuggen:** Lass Dir ausgeben, was drin steht. Vergleiche das mit Deinen Erwartungen.
---
**Begriffe:**
* truely: Ein nicht typsicherer Vergleich mit true matcht: `if ( $foo )`
* falsy : Ein nicht typsicherer Vergleich mit false matcht. `if ( ! $foo )`
Spambots, CSRF token
bearbeitet von Raketenwilli> Und die Emails, die mich erreichen, haben die Meldung:
> Spambot - Kein valides Subject
Ok. Untersuchung:
Um zu dieser Ausgabe vorzudringen muss der kleine Mann namens PHP (Peter Hat Programm) folgende Daten vorfinden:
~~~
if($_POST['formsend']) {
~~~
* `$_POST['formsend']` ist truly (nicht: false, null, 0 oder '')
~~~
if(is_null($name) || $name == '') {
~~~
* **UND NICHT** $name ist null oder leer.
~~~
} elseif(
is_null($email)
|| filter_var( $email,FILTER_VALIDATE_EMAIL) == false
) {
~~~
* **UND** `$email` ist **nicht** `null`
* **UND** filter_var( $email,FILTER_VALIDATE_EMAIL) ist **nicht** `falsy`
~~~
} elseif($_SESSION['token'] != $_POST['token']) {
~~~
* **UND** `$_SESSION['token']` und `$_POST['token']` stimmen überein, was aber auch zutrifft, wenn diese entweder leer, 0 oder `false` sind…
~~~
} elseif($nur_ziffern_ausgefuellt) {
~~~
* **UND** `$nur_ziffern_ausgefuellt` ist `truely`. Was aber z.B. auch zutrifft, wenn es „0“ (Den String „0"!) enthält.
**Und jetzt geh debuggen.**
---
**Begriffe:**
* truely: Ein nicht typsicherer Vergleich mit true matcht: `if ( $foo )`
* falsy : Ein nicht typsicherer Vergleich mit false matcht. `if ( ! $foo )`