ViaThinkSoft CodeLib
This article is in:
CodeLib → Programming aids → PHP
Gerade wenn ein Benutzer eine URL eingegeben soll, die anschließend mit einem <a>-Element in der Benutzeroberfläche aufgerufen wird, kommt es oft zu Problemen, wenn ein Benutzer die URL nicht mit "http://" beginnt, sondern nur mit "www.".
Folgender Code prüft, ob ein Protokoll angegeben wurde. Somit wird eine URL, die mit "ftp://" oder "https://" anfängt, nicht mit "http://" erweitert. Desweiteren beachtet das Script auch den Fall, bei dem ein "://" innerhalb eines Parameters vorkommen kann.
Folgender Code prüft, ob ein Protokoll angegeben wurde. Somit wird eine URL, die mit "ftp://" oder "https://" anfängt, nicht mit "http://" erweitert. Desweiteren beachtet das Script auch den Fall, bei dem ein "://" innerhalb eines Parameters vorkommen kann.
<?php
function url_protokoll_vorhanden($url)
{
$ary = explode('://', $url);
return ((strpos($ary[0], '/') === false) && (isset($ary[1])));
}
function korrigiere_url($url)
{
if (!url_protokoll_vorhanden($url)) $url = 'http://'.$url;
return $url;
}
?>
Daniel Marschall
ViaThinkSoft Co-Founder
ViaThinkSoft Co-Founder