2013-03-21 141 views
0

我有以下代码:传递PHP变量到JavaScript功能

FB.getLoginStatus(function (response) { 
    if (response.status === "connected") { 
     FB.api("me/bookvote:download", "post", { 

     }, //Missing a , here? 
然而

,我仍然得到:

Uncaught SyntaxError: Unexpected identifier 
for book: "<?php echo "http://mysite.xom/auction_details.php?name=$item_details["name"]&auction_id=$item_details["auction_id"]";?>", 

这可能是错误的,我的PHP变量JavacScript?

+1

看看代码中的颜色,你确定你有这些引号吗? – adeneo 2013-03-21 22:36:47

+0

啊对不起,我的编辑器很烂并且没有突出显示>< – user2185501 2013-03-21 22:39:41

+0

检查浏览器中呈现的内容 – 2013-03-21 22:41:58

回答

3

裹{}在你的字符串中的阵列项目,如{$item_details["name"]}

1

魔术引号是不再支持。更改

book: "<?php echo "http://mysite.xom/auction_details.php?name=$item_details["name"]&auction_id=$item_details["auction_id"]";?>",

book: "<?php echo "http://mysite.xom/auction_details.php?name=" . $item_details["name"] . "&auction_id=" . $item_details["auction_id"];?>",

1

你不能在你的PHP代码正确串联:

FB.getLoginStatus(function (response) { 
    if (response.status === "connected") { 
     FB.api("me/bookvote:download", "post", { 
      book: "<?php echo 'http://mysite.xom/auction_details.php?name='. $item_details['name'] . '&auction_id=' . $item_details['auction_id']; ?>", 
      fb:explicitly_shared = "true" //? Is syntactically valid but creates a global 
     }, 

为了增强可读性,我在你的PHP代码代替双引号用单引号。