Forum Doku Wiki Blog

Forumsarchiv 2004, Februar
Problem mit regul. Ausdruck

archivierte Beiträge lesen

  1. (PHP) Problem mit regul. Ausdruck von Ralf, 14. 02. 2004, 10:34

Problem mit regul. Ausdruck

Der folgende Beitrag wurde am 14. 02. 2004, 10:34 Uhr von Ralf veröffentlicht.

Hi,

bis jetzt läuft mein Script in etwa so ab:

if($newname == "") {
.. sag, es darf nicht leer sein ...
exit;
} else {
$filename = "$newname";
}

Ich möchte jetzt noch hinzufügen, daß $newname nur Zahlen, Zeichen und Unterstrich haben darf. Also habe ich daraus fogendes gemacht:

if($newname == "") {
.. sag, es darf nicht leer sein ...
exit;
}
elseif (preg_match("/^[a-zA-Z0-9_]*$/","$newname"))
{
... darf nur aus Buchstaben, Zahlen und Unterstrich bestehen ...
exit;
} else {
$filename = "$newname";
}

Problem: Das funktioniert nicht, leider passieren sämtlich Sonderzeichen meine Prüfung :-(

Weiß jemand, warum?

Grüße

Ralf

Problem mit regul. Ausdruck

Der folgende Beitrag wurde am 14. 02. 2004, 10:49 Uhr von Christian Kruse veröffentlicht.

Hallo Ralf,

> Ich möchte jetzt noch hinzufügen, daß $newname nur Zahlen,
> Zeichen und Unterstrich haben darf.

Dann kannst du das ganze so abkürzen:

if(!preg_match('/^\w+$/',$newname)) {
  echo 'boehze!';
  exit;
}

$filename = $newname;

Grüße,
 CK

--
Wenn der Schüler bereit ist, erscheint der Meister.

Problem mit regul. Ausdruck

Der folgende Beitrag wurde am 14. 02. 2004, 10:59 Uhr von Ralf veröffentlicht.


> if(!preg_match('/^\w+$/',$newname)) {
>   echo 'boehze!';
>   exit;
> }


Hi Christian,

danke, das läuft jetzt. Ich dachte immer, \w dürfte nur Buchstaben enthalten :-)
Kann das sein, daß mein alter Code wegen des fehlenden ausrufezeichens nichts blockte?

Grüße

Ralf

Problem mit regul. Ausdruck

Der folgende Beitrag wurde am 14. 02. 2004, 11:06 Uhr von Christian Kruse veröffentlicht.

Hallo Ralf,

> danke, das läuft jetzt. Ich dachte immer, \w dürfte nur Buchstaben
> enthalten :-)

\w ist dasselbe wie [0-9a-zA-Z_] :)

> Kann das sein, daß mein alter Code wegen des fehlenden
> ausrufezeichens nichts blockte?

Ja. Deine Logik war einfach falsch.

Grüße,
 CK

--
Zu wissen, was wir nicht wissen, ist die Quelle der Weisheit.

© 1998-2013 SELFHTMLImpressumSoftware: Classic Forum 3.4