| 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! |
 |
|

09-12-2007, 16:41
|
|
devas
Registrierter Benutzer
|
|
Registriert seit: Nov 2006
Beiträge: 138
|
|
Ausschließen von Zeichen
Hallo,
ich möchte zum Beispiel das man in meinem Skript sein Passwort ändern kann. Ich möchte aber bestimmte Zeichen ausschließen.
Entweder nur Zulassen von Buchstaben groß ,klein und Zahlen
Oder ausschließen von ä ö ü !"§$%&/()=? u.s.w
|

09-12-2007, 17:13
|
|
PHP-Desaster
PHP Expert
|
|
Registriert seit: Mar 2006
Beiträge: 3.104
|
|
Ja, dann mach das!  Wo ist das Problem?
|

09-12-2007, 17:18
|
|
devas
Registrierter Benutzer
|
|
Registriert seit: Nov 2006
Beiträge: 138
|
|
Mir ist leider keine Funktion bekannt, und finde keine. Ein Hinweis mit einer Funktion wäre schön.
|

09-12-2007, 17:18
|
|
combie
PHP Expert
|
|
Registriert seit: May 2006
Beiträge: 2.925
|
|
Zitat:
|
Ich möchte aber bestimmte Zeichen ausschließen.
|
Wozu soll das denn gut sein?
Je mehr Sonderzeichen erlaubt sind, desto schwerer zu erraten!!
Zitat:
Original geschrieben von devas
Mir ist leider keine Funktion bekannt, und finde keine. Ein Hinweis mit einer Funktion wäre schön.
|
Schau mal ins Handbuch bei den ctype und preg Funktionen.
Geändert von combie (09-12-2007 um 17:20 Uhr)
|

09-12-2007, 18:40
|
|
tontechniker
PHP Senior
|
|
Registriert seit: Jul 2005
Beiträge: 1.972
|
|
|

09-12-2007, 18:53
|
|
devas
Registrierter Benutzer
|
|
Registriert seit: Nov 2006
Beiträge: 138
|
|
Danke schon mal für die Hinweise
dafür habe ich mich entschlossen:
if (preg_match("/[^a-zA-Z0-9]/", $variable)){
echo"falsche Zeichen verwendet";
}
und damit entferne ich die "falschen" Zeichen
$variable= preg_replace("/[^a-zA-Z0-9]/", "", $variable);
Oder kann man da was umgehen?
|

09-12-2007, 21:31
|
|
Blackgreetz
PHP Junior
|
|
Registriert seit: Oct 2005
Beiträge: 901
|
|
Schwachsinn...^^ - löschbar
Geändert von Blackgreetz (09-12-2007 um 21:45 Uhr)
|

09-12-2007, 21:50
|
|
XGremliN
PHP Senior
|
|
Registriert seit: Sep 2003
Ort: Karl-Marx-Stadt
Beiträge: 1.900
|
|
@Blackgreetz
wie kommst du darauf hier zu bestimmen, ob was gelöscht wird? mal davon abgesehen, dass es höchstens nach Trash verschoben wird?
__________________
it's not a bug,
it's a feature!
|

09-12-2007, 23:51
|
|
Blackgreetz
PHP Junior
|
|
Registriert seit: Oct 2005
Beiträge: 901
|
|
Zitat:
Original geschrieben von XGremliN
@Blackgreetz
wie kommst du darauf hier zu bestimmen, ob was gelöscht wird? mal davon abgesehen, dass es höchstens nach Trash verschoben wird?
|
Ich meinte eigentlich meinen Post und nicht das Thema 
Hatte da erst was geschrieben, was aber dann, bei genauerer Betrachtung, unsinnig war ...
|

10-12-2007, 09:23
|
jahlives
Master  
|
|
Registriert seit: Jun 2004
Ort: Hooker in Kernel
Beiträge: 8.283
|
|
Zitat:
|
$variable= preg_replace("/[^a-zA-Z0-9]/", "", $variable);
|
Ich würde jetzt nicht verbotene Zeichen entfernen. Sonst hat der User ja keine Ahnung mehr in welcher Form sein PW nun angenommen wurde. Besser einfach auf ungültige Zeichen zu prüfen und das PW nicht zu akzeptieren, wenn solche vorhanden sind.
Gruss
tobi
|

10-12-2007, 09:48
|
|
PHP-Desaster
PHP Expert
|
|
Registriert seit: Mar 2006
Beiträge: 3.104
|
|
Wieso willst du diese Sonderzeichen eigentlich ausschließen? Ist doch absolut überflüssig!!
|

10-12-2007, 09:58
|
|
devas
Registrierter Benutzer
|
|
Registriert seit: Nov 2006
Beiträge: 138
|
|
Das mit dem PW war nur ein Beispiel. Eigentlich will ich lernen wie ich Zeichen ausschließe oder nur zulasse.
Dabei denke ich vorallem daran, dass mir Irgendwlecher Code eingeschleust werden könnte, was ich verhindern will.
Ich habe zwar was zum Thema SQL Injektangriffe gelesen, aber so richtig blicke ich noch nicht durch wie ich das verhindern soll. Ich versuche mit mysql_real_escape_string mich zuschützen aber ich willnatürlich auch die Dinge Filtern die die User per Formular eingeben dürfen.
|

10-12-2007, 12:57
|
|
matz0r
Newbie
|
|
Registriert seit: Dec 2002
Beiträge: 136
|
|
Beim speichern in die Datenbank: mysql_real_escape_string()
Beim ausgeben der Strings auf der Seite: htmlentities()
|

10-12-2007, 13:13
|
|
combie
PHP Expert
|
|
Registriert seit: May 2006
Beiträge: 2.925
|
|
strip_tags() nicht vergessen, auf alles Anwenden, was an Texten vom User kommt. Auch bei HTML Fragmenten möglich, weil die Funktion hat ja noch mehr Parameter
Hochgeladene Dateien pingelig überprüfen!!
z.B. Ist die jpg wirklich ein Bild ???
Und nein, die vom Browser kommenden Typeangaben unbrauchbar. Einzig ein Inditz für eine Attacke können sie liefern.
usw.....
|

10-12-2007, 13:44
|
|
PHP-Desaster
PHP Expert
|
|
Registriert seit: Mar 2006
Beiträge: 3.104
|
|
Zitat:
|
strip_tags() nicht vergessen, auf alles Anwenden, was an Texten vom User kommt.
|
Na Klasse, und alle meine mühselig eingegebenen HTML-Tags sind futsch  An Benutzereingaben herum zu fuschen ist mehr als daneben, wenn es nicht ausdrücklich so gewollt ist!
Wie schon gesagt wurde, mysql_real_escape_string oder entsprechend die anderen escape-Funktionen für andere DBMS.
|
|
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
|