PHP : www um das http:// in der Ausgabe ergänzen

  • Ersteller Ersteller wurst2k
  • Erstellt am Erstellt am
W

wurst2k

PHP : www um das http:// in der Ausgabe ergänzen

Hallo Freunde des PHP Codings,

ich brauche mal Hilfe bei der Realisierung von folgendem Wunsch :

In meiner DB ist eine URL mal im Stil von "www.blabla.de" oder auch mal als "blabla.de" abgelegt (ab und zu auch mal komplett richtig "http://www.blabla.de").

Nun möchte ich die Ausgabe immer im Stil von "http://www.blabla.de" haben. Wie kann man das realisieren ?
Ich war schon auf der Suche und finde immer nur Scripte die nicht funktionieren. Der Grundgedanke hält sich an "ereg_replace" fest.
 
Der Grundgedanke hält sich an "ereg_replace" fest.

Vollkommen richtig, Regular Expressions wären die elganteste Lösung. Du definierst also ein Suchpattern und je nach Ergebis erweiterst du den Link-String (Am besten eine Switch-Anweisung). Da das definieren von Patterns allerdings sehr schwierig ist (sogar ein eigenes Fachgebiet) kann man auch mit der Holzkeule (Sprich, den Stringfunktionen) arbeiten (Den Quellcode sieht ja keiner). Du trennst also die ersten 10 Buchstaben ab und prüfs ganz einfach mit if auf "http://www". Ist dies erfolgreich, nichts tun. Ansonsten nochmal auf "http://" bzw "www" prüfen. Dazu reicht ganz einfach die Substring-Funktion.

EDIT: Wenn du es mit RegEx machen willst, dann tipp HIER einfach mla "URI" ein. Nach ein paar Minuten Suche (Die Datenbank ist wirklich rießig) solltest du das richtige Pattern haben.
 
Wow !
Ich muss mal ganz herzlichen Dank sagen !

Tolle und vor allem ausführliche Antwort !
 
@Mandelbrot: Die Problemlösung is richtig in meinem Stil - So einfach lösen dass es schon wieder schwer erscheint dadrauf zu kommen *g*
Hab schon in Projekten vorher ein ähnliches System benutzt.

Vor allem ein rießen Dankeschön für die Seite! Das spart mal wirklich einiges an Zeit manchmal obwohl ich trotzdem warsch. dabei bleiben werde und meine Regex selbst schreiben werde. Für komplizierte Überprüfungen von Adressen, Mail-Adressen etc. werde ich aber mal die Datenbank durchforsten.

Großes THX!
 
wie wäre es mit einem htaccess eintrag?

RewriteCond %{HTTP_HOST} !^www\.domain\.de$
RewriteRule ^(.*)$ http://www.domain.de/$1 [L,R=301]
 
!nferno überschriebt das alle domainzugriffe oder nur den auf die bestimmte domain?
weil so wie das da steht überschreibt das doch nur den zugriff auf die domain "domain.de" oder?
ich für meinen teil kenne mich mit htaccess nicht so aus...
 

Beliebte Schlagwörter

Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden.
Du solltest ein Upgrade durchführen oder einen alternativen Browser verwenden.

Zurück
Oben Unten