Sākums » Lasītāju iesūtītie raksti, Programmēšana, php, phpTip

php tip #3

18.05.2009 10:13 100 skatījumi 2 komentāri

Vai ievadītā adrese ir korekta (pārbauda vai ievadītajai adresei ir klāt http://)? zemāk redzamā funkcija palīdzēs to noskaidrot

/**
	 * Validates URL if
	 * 	if any protocol specified (http,https, ftp..) there will be no change
	 * 	if URL looks like domain name (www.example.com) it will prepend (http://) at the begining
	 * 	if URL looks like local there will be no change
	 * Mainly used for banner url validation
	 */
	function validateUrl($sUrl) {
		if (!preg_match('@^([a-z]+):\/\/@', $sUrl)) {
			if (preg_match('@^([-\w\.]+)+(:\d+)?(\/)?@', $sUrl)) {
				return 'http://'.$sUrl;
			} else {
				return $sUrl;
			}
		}
		return $sUrl;
	}
Autors: gusc (gusc)
VN:F [1.2.3_620]
Rating: 0.0/5 (0 votes cast)
  • AnetiX www

    Ahh, ilgi pētiju un nesapratu, kā gan šī funkcija varētu pateikt, vai ievadītais url ir pareizs vai nē (jo nevienā gadījumā funkcija neatgriež false).
    Izrādas, ka funkcija vnk karina http:// klāt visam, kas :)
    Rezultāti:
    http://suns.lv=>http://suns.lv (der)
    suns.lv=>http://suns.lv (smuki)
    index.php=>http://index.php (kreisi)
    dsf oindsf onf sdf 32 r/#R ?@R r=>http://dsf oindsf onf sdf 32 r/#R ?@R r (kreisi)
    /apakš/mape=>/apakš/mape (smuki)
    index.php?get=set&var=ljarljar => http://index.php?get=set&var=ljarljar (kreisi)
    ?get=set&var=ljarljar=>?get=set&var=ljarljar (smuki)
    subdomens.domens.lv=>http://subdomens.domens.lv (smuki)

    VA:F [1.2.3_620]
    Rating: 0.0/5 (0 votes cast)
    1
  • andrisp www

    Vispār jau tā funkcija neko nevalidē. Tikai pieliek klāt http://, ja tur jau tāds nav.

    VA:F [1.2.3_620]
    Rating: 0.0/5 (0 votes cast)
    2
  • Nav nevienas atsauces

Ir ko teikt?

Vari izmantot:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="">

Raksta komentāru RSS