Webstatt.org - Community seit 2006 - 2012 (2024?)

url mit/ohne http?

Avatar user-180
21.05.2007 18:26

hallo liebe gemeinde der freaks und php checker. ich brauche euere hilfe.

ich will urls überprüfen und notfalls modifizieren..

wenn es nr url ist (also mit www. und 2 punkten) und ohne http dann soll http:// angehängt werden. wenn das schon da ist dann natürlich nicht. wenn es ne url ohne www ist dann soll das auch erkannt werden. wenn die eingabe keine url ist soll nix angezeigt werden ansonsten halt modifizierte url. wie geht das?

danke

may the force be with you. but mostly with me.
Avatar user-162
21.05.2007 18:36

willst du einfach eine Regex für urls?

Perfection is not when there’s nothing to add, but when there’s nothing to take away swisscheek.com/magazine
Avatar user-180
21.05.2007 18:56

ich blick regex nicht aber wenn man damit noch ermitteln könnte ob das http fehlt / das www fehlt und notfalls das http einfügen könnte oder beides da ist dann wärs perfekt

may the force be with you. but mostly with me.
Avatar user-162
21.05.2007 19:00

aso sorry das mit dem http anhängen hab ich übersehen... also willst du nur willen obs ein http-url ist? ftp etc. sollen nicht erkannt werden?

Perfection is not when there’s nothing to add, but when there’s nothing to take away swisscheek.com/magazine
Avatar user-180
21.05.2007 19:45

nein muss nicht sein

may the force be with you. but mostly with me.
Avatar user-162
21.05.2007 20:22

im prinzip reicht dir dann folgende Regex

(http://|)www\.(\w)*\.(\w)*

und mit strpos kannst du dann überprüfen obs ein http hat oder nicht und dann dazufügen

$str = "www.bla.com";
if(strpos($str, "http://"zwinkern === false) {
$str = "http://".$str;
}

Perfection is not when there’s nothing to add, but when there’s nothing to take away swisscheek.com/magazine
Avatar user-180
21.05.2007 22:00

hmm ich weiss nicht im prinzip geht es darum.
auf http://www.rebellen-web.de/prepage/gaestebuch.php soll man esine hp eintragen können. wenn "Homepage" oder leer eingetragen ist soll natürlich kein link aus dem namen werden. auch wenn was anderes als ne url drinsteht soll der name kein link werden. das dumme ist: wenn die urls nur mit www eingetragensind, dann erkennt der browser das nicht und verlinkt auf einen unterornder www.beispielhp.de. also muss bei urls, die www drin haben aber kein http ein http angehängt werden.i urls, die ein http aber kein www haben müssen aber auch als urls erkannt werden und ein link eingetragen werden. das geht mit deinem code laube ich nochnicht, oder?

may the force be with you. but mostly with me.
user-343
22.05.2007 15:59

Links auf gültigkeit prüfen? Vergiss es. Du müsstest prüfen, obs ne IP ist, wenn nein, obs mindestens 2 Bestandteile mit Punkt getrennt hat...
Allerdings kannst du prüfen, ob http:// fehlt, und das dann dran hängen, wenns nich schon da ist.
(Alternativ könntest du das Ziel anpingen und prüfen, ob der Ping zurück kommt... Wenn ja, n' http davor setzen, wenn nein, halt nichts reinsetzen lassen)

Ob was leer ist prüfst du mit empty(), mit trim() schneidest du Leerzeichen am Anfang und am Ende weg.

user-157
22.05.2007 16:24

Auf http://tut.php-q.net/guestbook.html in der Mitte wird dies mit Hilfe von substr() erklärt.

asdf!