2013-03-26 69 views
2

代码:获得来自外部的页面标题URL

<input type="text" id="url_value"/> 
<input type="button" id="get_title" value="Get title"/><br/> 

<span class="url_title"></span> 

小提琴:http://jsfiddle.net/AdNgZ/

有没有把任何网址上的文字输入,获取页面标题,并显示它的跨度没有去的方式到那个页面?

例子: 如果我把这个页面的网址:Get external page title from url,我得到的页面标题:PHP - 从URL

+3

它叫'cURL'我的朋友:http://stackoverflow.com/questions/3711357/get-title-and-meta-tags-of-external-site – chriz 2013-03-26 15:02:26

+3

JS不能直接联系到外部网站来检索内容。这违反了相同的原产地安全政策。但是,您可以让服务器获取页面标题并通过ajax将其发送给JS。 – 2013-03-26 15:02:41

+0

你忘了** - 堆栈溢出**。 – hjpotter92 2013-03-26 15:04:05

回答

1
<?php 
$page = file_get_contents($_REQUEST["url"]); 
$title = preg_replace('/<title>(.*)</title>/i', '$1', $page); 
echo htmlentities($title); 
?> 

获取外部网页标题有了这个代码,你需要激活allow_url_fopen的php.ini指示。

警告:尝试制作安全网站列表并允许在其页面中获得标题,以避免XXS攻击。

+0

http://security.stackexchange.com/questions/42498/best-way-to-sanitize-user-input-in-php – Leo 2015-01-26 00:35:40