Jump to content

[SOLVED] Create active links automatically ... using PHP


npsari

Recommended Posts

 

dear programmers

 

Users come to my website and submit to databse TEXT stuff

 

Sometimes, they mention their website adrress

 

http://www.example.com

 

But the website doesnt show as an clickable link (like here in the forums do)

 

It shows as normal text 

 

How can i tell the page to display links when www.com format is used

<?php

$tests = array(
	'http://www.mysite.com',
	'http://mysite.com',
	'www.mysite.com',
	'http://mysite.com/wombats/stuff/show_me.php?this=6&that=7&furry=yes',
	'text without an url',
	'url with www.google.com in text',
);

function clickable_short_url ($matches) {
	### Entire match.
	$url = array_shift($matches);
	### Only http:// match, if any.
	$http = array_shift($matches);
	### Shorten textual part if need be.
	$url_text = strlen($url) >= 30 ?
		(substr($url, 0, 20) . '...' . substr($url, -10, 10)) :
		$url ;
	### Add http:// prefix if need be.
	if (! $http) {
		$url = 'http://' . $url;
	}
	### Return new url.
	return '<a target="_blank" href="' . $url . '">' . $url_text . '</a>';
}

$pattern = '%
	(http://)? ### optional http:// prefix
	(?(1)|www\.) ### require www. if there is no http://
	\S+ ### gobble anything but white space
%x';

foreach ($tests as $test) {
	echo preg_replace_callback($pattern, 'clickable_short_url', $test);
	echo '<br/>';
}
?>

 

Hi, the above code converts the array

 

But what if I dont have a specific array

 

I only have a colomb called: Description

 

and I am using echo nl2br($row['Description']); to echo it

 

So, how can i add the code above to it

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.