Hallo Stanload,
und in die () kann man mehrere Werte packen oder kann ich dort gleich ($_POST) hineinpacken und der komplette String wird überprüft?
nein, du musst jeden einzelnen Wert "durchjagen".
dein Query muss dann statt
"INSERT [...] VALUES
('$_POST['nick']',[...])"
eben so aussehen:
"INSERT [...] VALUES
('".mysql_escape_string($_POST['nick'])."',[...])"
Es werden automatisch alle "gefährlichen" Zeichen auf einen Schlag entschärft? Wo erfahre ich denn, welche es sind? Ich würde nämlich dann eine Meldung ausgeben wollen, von wegen "Diese Zeichen sind nicht erlaubt: ...".
keine Ahnung, aber das ist auch egal - du kannst diese Zeichen durchaus zulassen - nur müssen sie eben bevor du sie durch mysql_query() jagst maskiert werden.
Das emty ist eine gute Idee, klappt aber dann nicht zur Überprüfung des PW und der Wiederholung.
hää? was hindert dich an
[...]
!empty($_POST['pass']) &&
!empty($_POST['passcheck']) &&
$_POST['pass']==$_POST['passcheck']
[...]
statt
[...]
$_POST['pass']!=="" &&
$_POST['passcheck']!=="" &&
$_POST['pass']==$_POST['passcheck'] &&
[...]
?
Kann man auch hier mehrere Werte mitgeben, die auf einmal geprüft werden sollen?
nein.
Und wie schaut's dann wieder mit $_POST[...] aus?
du meinst mit empty($_POST)? - keine Ahnung was da passiert, aber ich glaube nicht, das das was bringt - da müsstest du dir schon deine eigene Funktion schreiben die sowas macht.
Im Allgemeinen ist diese Frage leider immer noch offen, oder muss ich wirklich die Werte in Variablen reinschreiben?
du meinst sowas:
$name = $_POST['name'];
$query = "INSERT [...] VALUES('.mysql_escape_string($name).',[...])";
statt:
$query = "INSERT [...] VALUES('.mysql_escape_string($_POST['name']).',[...])";
- nein, das ist nicht nötig (wenn es nicht das war, was du wissen wolltest, frag nochmal nach.
btw: die in [pref:t=58014&m=325287] genannte Fehlermeldung ist inzwischen weg, oder?
Grüße aus Nürnberg
Tobias
Selfcode: sh:( fo:) ch:? rl:( br:< n4:& ie:% mo:| va:) de:] zu:) fl:( ss:| ls:[ js:|