# inhalt eines textfeld auf verbotene zeichen Prüfen



## Windhund (7. Mai 2008)

Hallo

Ich suche schon seit gestern verzweifelt im Internet nach einer möglichkeit wie ich die Ausgabe eines Textfeldes auf verbotene zeichen wie ";:$<>(){}[]" öder änliche überprüfen kann.

Habe zwar einen befehl gefunden aber der funktionirt irgentwie nur extremst unzuverlässig, vieleicht oder warscheinlich sogar^^ hab ich was falsch gemacht, aber was?

Hier mal mein versuch:

```
if (!preg_match("/[a-zA-Z0-9]/", $_POST["text"])) 
{echo 'Unerlaubt';}
else
{echo 'erlaubt';}
```
Ich hab immer das Problem das nur ein erlaubtes zeichen dabei sein muss damit die abfrage erlaubt sagt


hoffe ihr versteht was ich meine könnt mir helfen, ich wäre euch sehr dankbar


----------



## campari (7. Mai 2008)

```
if (!(preg_match("/[a-zA-Z0-9]/", $_POST["text"])))
{echo 'Unerlaubt';} 
else 
{echo 'erlaubt';}
```


----------



## Windhund (7. Mai 2008)

Danke für die schnelle antwort, leider ist immernoch das problem das nur ein erlaubtes zeichen dabeisein muss damit die abfrage den ganzen text erlaubt

z.b
abc => Erlaubt (richtig)
ABC => Erlaubt (richtig)
123 => Erlaubt (richtig)
abcABC123 => Erlaubt (richtig)
!§%=& => Verboten (richtig)
%()/(&d => Erlaubt (FALSCH)


----------



## Loomis (7. Mai 2008)

```
if ( preg_match ( "/[^a-zA-Z0-9]/", $string ) )
{echo 'Unerlaubt';} 
else 
{echo 'erlaubt';}
```
Versuch das mal.

//edit: So verbietest du aber wirklich alle Sonderzeichen, sogar ein ß und jedes Satzzeichen.


----------



## Windhund (7. Mai 2008)

Super danke für die Hilfe jetzt funktionirts entlich
Danke euch


----------



## Windhund (7. Mai 2008)

sorry hab deinen edit zu spät gesehen,
wie kann ich das ß den noch zusätzlich erlauben?


----------



## Loomis (7. Mai 2008)

Müsste glaube so gehen:

```
/[^a-zA-Z0-9ß]/
```


----------



## Windhund (7. Mai 2008)

wie geil

Danke dir funktionirt alles


----------



## Windhund (7. Mai 2008)

hi ich bins nochmal^^

nochmal kurze Frage zum thema weitere zeichen erlauben.

wie erlaube ich einen zeilen umbruch?


----------



## RaVenC (7. Mai 2008)

```
/[^a-zA-Z0-9ß/\n]/
```
So müsstest du glaub ich nen Zeilenumbruch erlauben ^^
hab ich aber nicht getestet


----------



## Loomis (7. Mai 2008)

```
/[^a-zA-Z0-9ß\s]/
```

//edit: \s erlaubt dann Leerzeichen, Zeilenumbrüche usw.... Wenn du wirklich nur Zeilenumbrüche haben willst (also keine Leerzeichen usw.) nimm nur \n.
(Bei der Methode von RaVenC müsste man andere Delimiter als / verwenden)


----------



## Windhund (7. Mai 2008)

danke euch


----------



## maeTimmae (7. Mai 2008)

[phpf]ctype[/phpf]-Funktionen benutzen?


----------

