Php 投票系统上下竖起大拇指

Php 投票系统上下竖起大拇指,php,javascript,ajax,Php,Javascript,Ajax,目标是在一个页面上有多个图像,并允许公众对其进行投票。然后我有一个AJAX命令来删除投票按钮,并对您的投票表示感谢。。当我为每个图像手动键入HTML时,我可以让它工作,但当我将值放入数组并希望PHP执行代码时,它就停止工作 我使用chrome并点击网络标签下的F12查找,当我点击up或down时,它会显示“UncaughtSyntaxError:Unexpected token}” 我相信这和“”和“”的组合有关 我试过两种方法,都犯了同样的错误。当我使用“”包装变量时,它不会更改变量 当我使用

目标是在一个页面上有多个图像,并允许公众对其进行投票。然后我有一个AJAX命令来删除投票按钮,并对您的投票表示感谢。。当我为每个图像手动键入HTML时,我可以让它工作,但当我将值放入数组并希望PHP执行代码时,它就停止工作


我使用chrome并点击网络标签下的F12查找,当我点击up或down时,它会显示“UncaughtSyntaxError:Unexpected token}”

我相信这和“”和“”的组合有关

我试过两种方法,都犯了同样的错误。当我使用“”包装变量时,它不会更改变量

当我使用“”包装变量时,页面会进行解析,但会出现相同的未捕获语法错误

我尝试过使用eval($output),它在第2行给出了一个解析错误

希望这足够清楚。非常感谢您的帮助

<script>
function getVote(var1,var2)
{
if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else
  {// code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xmlhttp.onreadystatechange=function()
  {
  if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
        document.getElementById(var2).innerHTML=xmlhttp.responseText;
    }
  }
xmlhttp.open("GET","poll_vote.php?vote="+var1,true);
xmlhttp.send();
}
</script>
</head>
<body>
<? 
$shirts = "C001,C002,C003,C004";
$i = 0;
foreach (explode(",",$shirts) as $shirt) {
$i++;
$output .= "
<div align='center'>
<img src='shop/images/web/$shirt.jpg' width='250' height='293'>
<br />
<div id='poll$i' align='center'>
<a href='#' onClick='getVote('Yes,$shirt,poll$i')'><img src='/images/vtu.jpg' width='50' height='64'></a>
<a href='#' onClick='getVote('No,$shirt,poll$i')'><img src='/images/vtd.jpg' width='50' height='64'></a>
</div>
<br />";
};
echo("$output");
?>

函数getVote(var1,var2)
{
if(window.XMLHttpRequest)
{//IE7+、Firefox、Chrome、Opera、Safari的代码
xmlhttp=新的XMLHttpRequest();
}
其他的
{//IE6、IE5的代码
xmlhttp=新的ActiveXObject(“Microsoft.xmlhttp”);
}
xmlhttp.onreadystatechange=函数()
{
if(xmlhttp.readyState==4&&xmlhttp.status==200)
{
document.getElementById(var2.innerHTML=xmlhttp.responseText;
}
}
open(“GET”、“poll_vote.php?vote=“+var1,true”);
xmlhttp.send();
}

是的,您的代码中确实存在不匹配的
。您实际上是在合并3种不同的语言,并且每种语言都使用引号用于不同的目的。通过使用以下方法,至少消除引用等式中的PHP角度:


echo
echo($output)
这完全没有用,你应该这样做:
echo$output;
你不能
=$output
$output
之前没有设置,因为
=
需要当前值
$output
。错误说明了什么?onclick事件中的引号没有转义,
onclick
应该都是小写的ht SyntaxError:Unexpected token}好的,我按照你在这里说的方式交换了代码,现在我得到了错误“解析错误:语法错误,第32行的/home/five/public\u html/thefifthpoint.com/vote.php中的Unexpected T TúSL”我还将Yes,{$shirt}改为Yes-{$shirt},poll{$I}为了不混淆任何东西……好的,在阅读和阅读了herdeoc部分之后,结果是需要一个
echo <<<EOL
...
<div id="poll{$i}" align="center">
             ^--^-- note the use of {}
<a href="#" onclick="getVote('Yes,{$shirt},poll{$i}')"> etc...

EOL;