So erzwingen Sie einen HTML-link zu absolute?
In meiner website, Benutzer können einen URL in Ihrem Profil.
Dieser URL kann http://www.google.com
oder www.google.com
oder google.com
.
Wenn ich legen Sie einfach in meinen PHP-code <a href="$url">$url</a>
, der link ist nicht immer absolut.
Wie kann ich die Kraft der a
tag werden absolute ?
- Stellen Sie sicher, es ist immer vorangestellt
http://
(oder//
für ein Protokoll-relativer link) - Sie können versuchen, mit Fenster.Lage, Aber das beste ist die Validierung von Eingaben der Benutzer. Prompt Sie, um eine gültige url handelt.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie das Präfix der URL, mit
//
wird er behandelt, wie ein absoluter. Zum Beispiel:<a href="//google.com">Google</a>
.Bedenken Sie dies verwenden das gleiche Protokoll, die Seite wird serviert, mit (z.B. wenn Ihre Seite die URL ist
https://path/to/page
die resultierende URL wirdhttps://google.com
).Verwendung eines Protokolls, vorzugsweise http://
Benutzer bitten, geben Sie die url in diesem format, oder verketten http://, wenn nicht Hinzugefügt.
Ich hatte kürzlich etwas ähnliches.
Grundsätzlich, wenn die url nicht enthalten, 'http', fügen Sie es auf der Vorderseite der Zeichenfolge (Präfix).
Oder wir können dies tun, mit RegEx
Danke an @JamesHilton für den Hinweis auf einen Fehler. Danke!
"/^https?:\/{2}\w/i"