как да премахна http://www при въвеждане от потребител

mnis

Registered
Здравейте,

Имам следното нещо

1. Поле в което потребител може да впише адрес на даден сайт.

След въвеждане на сайта от потребителя, връзката се извежда по следния начин:
Код:
<a href="http://www.$site"></a>

Проблемът е, че по някога потребителя вписва и http://www при добавянето на сайта и връзката става:
Код:
<a href="http://www.http://www.abv.bg></a>

Въпросът ми е как да направя проверка дали потребителя е въвел http://www пред името на сайта и ако е въвел как да го премахна от стринга?
 
Код:
<?php
$asd = "http://site.com";
$zxc = preg_replace("/http:\/\/(.+?)/s", '$1',$asd);  
$zxc = preg_replace("/www.(.+?)/s", '$1',$zxc);  

	 echo"http://www.$zxc";
?>


Заповядай! :)
 
@Replace - не става въпрос за htaccess

@heminei - благодаря ти - това е решението, но...

чрез скрипта, който ми даде премахвам символи пред низа (това се опитвах да направя), но имам още един въпрос: как да премахна символи след определен низ.

Примерно,

page.php?id=4&lang=bg

Как да премахна всичко след стойността на id-то, т.е. как да премахна lang=bg

????
 
madmax3: явно не четеш постовете от начало.

Не мога да се справя със следното нещо:
Потребител вписва даден сайт в текстово поле. Искам да премахна всичко от въпросния (вписан) низ след id-то като за пример написах:
page.php?id=4&lang=bg
искам да премахна всичко след четворката (независимо дали е lang или някаква друга променлива)

Решението се върти около поста на heminei, но той предостави вариант за премахване на символи в началото на низа (аз това бях поискал тогава....)
 
Добре де, пробвай това :

if (substr($site,0,7)=="http://") {$site=substr($site,7);}
if (substr($site,0,4)=="www.") {$site=substr($site,4);}



$id="";

$s1=explode("?",$site);

$s2=explode("&",$s1[1]);

foreach ($s2 as $key) {

$s3=explode("=",$key);

if ($s3[0]=="id" && $id=="") {$id=$s3[1];}
}

$result=$site."?id=".$id;


И не е лошо да проверяваш за разни кавички, апострофи и т.н.
 
Код:
<form method="POST" action="">
Site : <input type="text" name="site" />
<input type="submit" name="submit" value="submit"></form>


<?
if (isset($_POST['submit']))
{
$site=$_POST['site'];

$preg=preg_match('/http|www/', $site);
if ($preg)
{
$new=explode("http://", $site);
}
else
{
$new=$site;
}
echo "<a href='$new[1]'>$new[1]</a>";
}
?>
 
<?php
$url = "http://WWW.abv.bg/page.php?id=4&lang=BG";
$url = preg_replace("/(http:\/\/|www\.)/i","",$url);
$url = preg_replace("/(id=[0-9]+)\&(.*)$/i","$1",$url);
echo $url;
?>
Питай ако имаш въпроси
 
<?php
$url = "http://www.abv.bg/xaxa/super/page.php?lang=bg&ne6to=drugo&id=4&ala=bala";
$url = preg_replace("/(http:\/\/|www\.)/i","",$url);
$url = preg_replace("/([a-z0-9-_\.])\?[^\/]+(id=[0-9]+)(.*)$/i","$1?$2",$url);
echo $url;
?>
Мисля че така вече става
 

Back
Горе