2016-08-27 6 views
1

私はリンク交換サイトを作りたいと思います。私は友人がウェブサイトのリンクをどのように扱っているか知りたい。 これまで、Webサイトからリンクを削除したときに検出するPHPスクリプトが見つかりました。しかしそれは私のためには十分ではありませんでした。通知相互リンクの属性の使用

は私が期待:どのように私は知ることができるならば変更することにより、例えば私の友人の不正行為、また、私はそのウェブサイト上のURL Domain.com

Iを指すリンクをタイトルを知りたいrel="dofollow" rel="nofollow"へあなたからのご意見を大変感謝しています。

ながら私のスクリプトコード:

<?php 
$mydomain = "http://Domain.com"; // Set this to your domain 
$list = file_get_contents("list_uri.txt"); 
$urls = explode ("\n", $list); 
echo "<B>Checking $mydomain</B><P><FONT SIZE=-1>"; 
foreach ($urls as $url) { 
if (strlen ($url)) { 
echo $url . "<B><FONT COLOR="; 
if (strpos (file_get_contents($url), $mydomain) != FALSE) { 
echo "GREEN> Link Installed!"; 
} else { 
echo "RED> Link Not Installed!"; 
} 
echo "</FONT></B><BR>"; 
} 
} 
echo "</FONT>"; 
?> 
+0

はあなただけ「私は非常にあなたから任意の入力をお願い申し上げます」ではない、具体的な質問をする必要があります。スクリプトは機能していますか?もしそうでなければ、あなたはそれでどんな問題を抱えていますか? – Barmar

+0

@Barmar、ありがとう。スクリプトコードは動作していますが、 "Link Installed"または "Link Not Installed"という情報のみが表示されます。 'dofollow'でも' nofollow'でもリンクする属性も知りたいです。 – PayPerDay

答えて

0

あなたはあなたの友人が自分のコードにタブまたは他のいくつかの特殊文字を入れて知ることができません。あなたはそれが非常に使いやすいのシンプルなHTML DOMパーサとHTMLを解析する必要があります。

$urlContents = file_get_html($url); 
$elements = $urlContents->find('a[rel="dofollow"][href="'.$myDomain.'"]'); 
if(count($elements) > 0){ 
    /*Correct structure. You can loop elements with foreach($elements as $element) */ 
}else{ 
    //HTML doesn't have on. 
} 

http://simplehtmldom.sourceforge.net/

+0

ありがとうございます。私はまず試してみる。 – PayPerDay

+0

私はまだあなたのコードを着ることができません。たぶん私はそれを使用する方法やコードが間違っているか分からない。ありがとうございます.. – PayPerDay

+0

あなたのプロジェクトにSimple HTML Dom Parserが含まれていましたか? –