Wiki-Artikel Reloadsperre
bearbeitet von Christian KruseHallo Matthias,
> > Die beiden anderen Methoden funktionieren weiterhin,
>
> Kannst du bitte noch mal über den [Teil 1](https://wiki.selfhtml.org/wiki/Benutzer:Apsel/Reloadsperre#Daten_enthalten_Prim.C3.A4rschl.C3.BCssel) schauen?
Autowert… urghs. ;-)
~~~ php
$id_check -> bindParam(':BName', $_POST['bname']);
$id_check -> execute();
~~~
Ich würde hier lieber die Parameter an `execute()` übergeben, das ist einfacher lesbar:
~~~ php
$id_check -> execute(array(':BName' => $_POST['bname']));
~~~
Das gleiche weiter unten. Weiter:
~~~ php
if(isset($benutzer['ID'])) array_push($fehler,'Dieser Benutzer existiert schon.');
~~~
Diese Notation ist gefährlich, siehe `goto fail` - ich würde immer Klammern nutzen. In dem `INSERT` hast du einen Quoting-Fehler: `"Ich"`, es müsste aber `\"Ich\"` sein (SQL embedded in PHP).
Bzgl des Inhalts: ich würde mir die Bemerkung über natürliche Primärschlüsser sparen: es macht den Satz schlechter lesbar, tut hier nichts zur Sache und der Wahrheitsgehalt ist mindestens strittig (um natürliche vs künstliche Primärschlüssel existiert seit Ewigkeiten eine leidenschaftliche Diskussion). Bei den Error-Codes würde ich explizit MySQL erwähnen, vllt im Stile von „so lauten der Error-Code und die entsprechende Fehlermeldung bei MySQL“ oder so.
Ansonsten sieht das gut aus.
LG,
CK
--
<https://wwwtech.de/about>