2011-01-24 13 views
0

のためのベストプラクティスは、私は、このリンク上の実際のURLを挿入する必要がありますか?ありがとう!あなたはスーパーグローバル$_SERVER配列;-)は、実際のURLを取得、この場合

<?php 
$myURL = 'http://'. $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']; 
?> 

とあなたのリンクがされる...

<a href="http://www.facebook.com/sharer.php?u=<?php echo($myURL); ?>&t=<?php echo($title); ?>" target="blank">Share on Facebook</a> 

// EDIT使用することができます

+0

URLのJavaScriptの 'location.href'(最後の"/"なし) – JCOC611

+0

現在のページのURLを意味しますか? – Adam

+0

はい@現行 – DomingoSL

答えて

2


$myURLurlencode() Dであるべきで、プロトコルを確認する - >

<?php 
$protocol = 'http://'; 

if(!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] != 'off' || $_SERVER['SERVER_PORT'] == 443) { 
    $protocol = 'https://'; 
} 

$myURL = urlencode($protocol . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']); 
?> 
+0

$ myURLはリンクに挿入する前にURLエンコードする必要があります。スキーマは必ずしもhttp(httpsかもしれません)ではありません。 $ _SERVER ['HTTP_HOST']を検証する必要があります。 – Oswald

+0

@Oswald:もちろんあなたは正しい; - )... – thedom

関連する問題