echo <script>让我疯狂</script>

时间:2012-10-20 17:57:00

标签: php javascript facebook-php-sdk

在IIS上使用Documentation;

<?php 
    $key = '**********';
    $value = '**********';
    session_start ( );

    $code = $_REQUEST [ 'code' ];
    if ( empty ( $code ) )
    {
        $_SESSION [ 'state' ] = md5 ( uniqid ( rand ( ) , true ) );
        $dialog_url = 'https://www.facebook.com/dialog/oauth?client_id=' . $key . '&redirect_uri=' . urlencode ( $value ) . '&state=' . $_SESSION [ 'state' ];
        echo('<script> top.location.href=' . $dialog_url . ';</script>');
    }
?>

结果:

top.location.href=' . $dialog_url . ';'); } ?> 

请在发布之前尝试您的建议,因为我已尝试了40多条建议,审核了所有类似问题,并在过去2小时内进行了搜索。

4 个答案:

答案 0 :(得分:3)

您的服务器不会将您的文件解析为php。这就是症状。

请将how to configure your IIS server视为解析html文件为PHP。

编辑完整性:

正如其他答案所述,您应该在$dialog_url附近添加双引号以防止javascript错误

echo('<script> top.location.href="' . $dialog_url . '";</script>');

答案 1 :(得分:2)

根据您的评论,这是在.html文件中。将文件重命名为.php扩展名,并确保通过Apache等服务器进行查看。如果您没有方便,我建议XAMPP

(旧答案,仍然相关)
您需要在脚本中使用双引号:

echo '<script>top.location.href="' . $dialog_url . '";</script>';

在行动here中查看,其余大部分为here

答案 2 :(得分:2)

尝试

echo '<script> top.location.href="' . $dialog_url . '";</script>';

答案 3 :(得分:0)

echo("<script>top.location.href='{$dialog_url}';</script>");

用引号括起$ dialog_url,用双引号括起来,以便轻松实现。