Eigentlich möchte ich eine URL auf bestimmte Zeichen überprüfen lassen, die garantiert nicht in einer URL vorkommen können. Auf die Art will ich testen, ob eine ungültige URL eingegeben wurde.
Jetzt das Problem: preg_match findet in der URL Zeichen, die gar nicht vorhanden sind. Ich habe mir die URL ausgeben lassen, aber die gefundenen Zeichen kommen tatsächlich nicht darin vor.
Hier mein Quellkot/(-code):
Das selbe habe ich auch mit strpos versucht, allerdings habe ich da das selbe Problem:
Habe ich einen Logikfehler in meinem Skript? Oder passt irgendwas anderes nicht?
Jetzt das Problem: preg_match findet in der URL Zeichen, die gar nicht vorhanden sind. Ich habe mir die URL ausgeben lassen, aber die gefundenen Zeichen kommen tatsächlich nicht darin vor.
Hier mein Quellkot/(-code):
PHP-Code:
<?php
if (preg_match("/(\||\ |;|\$|\)|\()/U", $URL, $Treffer_URL)) {
$URL = "http://www.testurl.net";
}
?>
PHP-Code:
<?php
$UNGUELTIGE_ZEICHEN = array ("$", ";", "|", " ", "(", ")");
for ($x=0;$x<=count($UNGUELTIGE_ZEICHEN)-1;$x++) {
if (strpos($URL, $UNGUELTIGE_ZEICHEN[$x]) === true) {
$URL_UNGUELIG = 1;
}
}
?>
Kommentar