如何发送facebook按钮当前href

时间:2011-04-03 20:24:18

标签: php javascript facebook href

<iframe src="http://www.facebook.com/plugins/like.php?href=<?php echo 'http://domainame.com/'.$_SERVER['PHP_SELF'].'?'.$_SERVER['QUERY_STRING'];?>&amp;layout=button_count&amp;show_faces=false&amp;width=120&amp;action=recommend&amp;font=verdana&amp;colorscheme=light&amp;height=21"
 scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:120px; height:21px;" allowTransparency="true"></iframe>

但如果我在http://domainame.com/?bla,则会打印http://domainame.com//index.php?bla

如果我可以发送this.href,但我不知道如何在线插入js,

帮助?

在你的帮助下我们开始工作:

<iframe src="http://www.facebook.com/plugins/like.php?href=<?php echo str_replace("index.php","",'http://'.$_SERVER['HTTP_HOST'].$_SERVER['SCRIPT_NAME']); ?>&amp;layout=button_count&amp;show_faces=true&amp;width=150&amp;action=recommend&amp;font&amp;colorscheme=light&amp;height=21" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:120px; height:21px;" allowTransparency="true"></iframe>

可以变得更好吗?

3 个答案:

答案 0 :(得分:1)

试试这个:<?php echo rawurlencode('http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']); ?>

(顺便说一下,由于注入漏洞,你应该从不使用$_SERVER['PHP_SELF'] 此类Read this了解详细信息。)< / p>

答案 1 :(得分:1)

尝试将以下内容用作href的值:

<?php echo rawurlencode('http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']); ?>

答案 2 :(得分:-1)

我认为该页面的名称为index.php,而您的服务器将index.php设置为默认页面,这意味着http://domainame.com//index.php?bla可以作为http://domainame.com/?bla的页面引用互换。