Facebook Like 按钮忽略 URL 参数

2024-02-06

我试图喜欢我的页面,但 url 参数被忽略

这是我的代码:

<style type="text/css">
.float-all {
    float: left;
    width: 82px;
    height: 30px;
    overflow: hidden;
    margin: 2px;
    padding: 4px 2px;
}
.post-btn-share {
    width: 100%;
    overflow: auto;
}
    <link rel="canonical" href="http://mypage.com/view_photo.php" />
    </head>
 <div class="post-btn-share">
<div class="addthis_toolbox addthis_default_style">
    <div class="float-all">
 <iframe src="http://www.facebook.com/plugins/like.php?href=http://mypage.com/view_photo.php?       img=32&user=1&xx=&send=true&layout=standard&width=300&show_faces=true&action=like&colorscheme=light&font&height=80" frameborder="0" style="border:none;" scrolling="no" width="320" height="240"></iframe>
    <div class="float-all">

    </div>
    <div class="float-all">

    </div>
</div>

和view_photo代码

<?php 
    session_start();

?>

<div class="dev-ajuste">
<?php 

    require_once('script/require_raiz.php');
    $login = new login();
    $login->log_isset();
    //$login->info_user();
    $janela = new Janelas('script/system/config.ini','perfil');
    $janela->info_visualiza_foto($_GET['img'],$_GET['user']);
?>
</div>
 <!--=======Cabeçalho e chamadas de scripts do documento=======-->
<?php include_once("head.php"); ?>
 <!--=======Barra de navegação=======-->
<?php include_once("navbar.php"); ?>
<div id="janela" class="perfil"></div>
<div id="info"   class="<?php echo $_GET['user'];?>"></div>

 <!--=======Header=======-->
<?php include_once('box_foto.php'); ?>

    <!--=======Propaganda=======-->
    <?php include('addsense.php');?>

    <!--=======Área dos posts=======-->
     <?php include('post_area.php');?>

 <!--=======Rodapé do documento=======-->
<?php include_once("footer.php"); ?>
 <!--=======Seguranca de Login=======-->

(将评论链变成潜在的答案)

我真的不认为你已经明白了。查看 iframe 中使用的 URL:

http://www.facebook.com/plugins/like.php?href=http://mysite.com/view_photo.php?img=34&user=1&xx=&;send=true&;layout=standard&;width=300&;show_faces=true&;action=like&;colorscheme=light&;font&;height=80

在 URL 中,发送到资源的参数从?特点。但你有两个?人物。参数是从第一个参数开始还是从第二个参数开始?解析器无法知道。当一个&遇到的情况是,分隔外部 URL 的参数(第一个?),或者用内部 URL 括起来(第二个?)?解析器无法知道。

格式需要是这样的:

http://someresource?parameter1&parameter2&etc

如果这些参数之一也是一个 URL,其own参数,整个参数需要进行 URL 编码,这样就不会混淆将其用作参数的 URL 的其余部分。任何解析器都必须能够清楚地识别内部 URL 和外部 URL 的内容。当需要使用它时,它会为你对内部的 URL 进行解码。

PHP提供一个函数 http://php.net/manual/en/function.urlencode.php去做这个。JavaScript 也是如此 https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/encodeURIComponent。您可以使用任何您想要的。您所做的就是向其传递要编码的字符串(这将是您的内部 URL,其中包含访问该 URL 所需的任何参数),它将返回编码后的字符串(这将是发送到外部 URL 的参数)。

(另外,为什么你有所有这些分号?你没有用分号分隔 URL 参数。我不确定你从哪里得到这个想法。)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Facebook Like 按钮忽略 URL 参数 的相关文章

随机推荐