bestimmte URL zulassen

makitaman

Mitglied
Hi Leute
hänge mal wieder.
Sitze gerade an einem Formular.
Und ich möchte nur bestimmte url´s zulassen.
Also welche die nach *.de *.com usw. aufhören.
Das soll heißen das ich solche:

"http://www.tutorials.de/newthread.php?do=newthread&f=8"

nicht zulasse, sondern nur "http://www.tutorials.de".

hat jemand einen Tip
Danke schon mal alle im Voraus
 
Probier mal Folgnedes:
PHP:
<?php

	$string = 'http://www.tutorials.de/newthread.php?do=newthread&f=8';
	$pattern = 'https?://(?:(?:(?:(?:(?:[a-zA-Z\d](?:(?:[a-zA-Z\d]|-)*[a-zA-Z\d])?)\.)*(?:[a-zA-Z](?:(?:[a-zA-Z\d]|-)*[a-zA-Z\d])?))|(?:(?:\d+)(?:\.(?:\d+)){3}))(?::(?:\d+))?)';
	var_dump((bool)preg_match('/^'.addcslashes($pattern, chr(0x2F)).'$/', $string));

?>
 
Vieleicht hilft dir das weiter:

Befehl
array parse_url(string url)

Version

PHP 3, PHP 4 >= 4.0b1

Beschreibung

Mit parse_url() kann man eine URL (url) analysieren und in ihre Bestandteile
aufteilen. Als Rückgabewert dieser Funktion erhalten Sie ein assoziatives Array
mit den einzelnen Bestandteilen der URL.

Folgende Elemente enthält das Array:
scheme - Protoll der Anfrage (z.B http, ftp etc.)
host - Name (z.B. http://www.selfphp3.de)
port - Anschlussnummer (z.B. 9000)
user - Username (für Logins)
pass - Passwort (für Logins)
path - Pfad zur Datei
query - Anfrage an eine Datei
fragment - Sprungziel (Anker) innerhalb einer Datei

Gruß Steff
 
Zuletzt bearbeitet:
Hab das jetzt mal so eingebaut:

PHP:
 if ($ht == "vorschau")
{$string = $hp; 
    $pattern = 'https?://(?:(?:(?:(?:(?:[a-zA-Z\d](?:(?:[a-zA-Z\d]|-)*[a-zA-Z\d])?)\.)*(?:[a-zA-Z](?:(?:[a-zA-Z\d]|-)*[a-zA-Z\d])?))|(?:(?:\d+)(?:\.(?:\d+)){3}))(?::(?:\d+))?)'; 
    var_dump((bool)preg_match('/^'.addcslashes($pattern, chr(0x2F)).'$/', $string)); 
echo "nicht zugelassen";

}
else{

echo"alles wird gut";}

bekomme aber immer den Ausdruck "nicht zugelassen"
egal wie ob http://www.xyz.de/test/ oder http://www.xyz.de

Grübel
 
Kein Wunder, denn sobald die Variable $ht den Wert vorschau besitzt, wird „nicht zugelassen“ ausgegeben.
 
meine idee war, wenn vorschau
dann nachgucken wie die $hp (url) variable aussieht.
wenn ok dann alls wird gut

was ist falsch
 
Es wird zwar überprüft, ob die Zeichenkette den oben beschriebenen Kriterien entspricht, das Ergebnis dieser Überprüfung wird jedoch nicht in die weitere Verarbeitung berücksichtigt.
 
sorry

War mal wieder blind.
Habs jetzt noch einmal getestet.
wenn ich
http://www.xyz.de/test/ erscheint bool(false)
http://www.xyz.de und hier bool(true)
genaus so wie ich es mir gedacht hatte. Prima.

Doch wie wie verarbeite ich diese beiden werte true und false
Und es soll ja auch nicht immer stehen bool(false) oder so etwas.

please help :mad:
 
Zurück