一个php做的简易的投票系统例子出现的问题
在网页投票后没有票数没有变化,但在数据库里改写票数,网页票数相应变化
代码如下:
- PHP code
<!---ecms Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--><?if($voted && $already_voted){$SetCookie("already_voted","1");}?> <title>线上投票系统</title> <body> <font size="5" color="#0000ff">线上投票系统</font><br><p> 主题:我们选举的班长 " method="POST"> <? mysql_pconnect("LocalHost","root","wuhong"); if($voted && $already_voted) { print("<font size="4" color="#ff0000">你已投上神圣的一票!</font><br><p>\n"); } else if($voted) { if(!mysql_db_query("xyl","update vote_banzhang set vote_number=vote_number+1 where votee='$voted'")) { print mysql_erron().":".mysql_error()."<br>"; } }$result=mysql_db_query("xyl","select sum(vote_number) as sum from vote_banzhang"); if($result) { $sum=(int)mysql_result($result,0,"sum"); mysql_free_result($result); } $result=mysql_db_query("xyl","select * from vote_banzhang order by vote_number DESC"); print "<table border="0"><tr><td>选取</td><td>我们的班长</td><td>票数</td></tr>\n"; while($row=mysql_fetch_row($result)) { //print "<tr><td align="center"></td>td>"; //print $row[<i style="color:transparent">本文来源gaodai$ma#com搞$$代**码)网8</i><strong>搞代gaodaima码</strong>0]."</td><td align="right">".$row[1]."</td><td>"; //print "</tr>\n"; //print "</table>\n";0 $votee=$row[0];$vote_numbers=$row[1];?> <tr><td align="center"> </td> <td> <? echo $row[0]?></td> <td align="right"><? echo $row[1]?></td> </tr> <? } ?> </table> <? mysql_free_result($result); ?>
数据库中只有一个表 vote_banzhang(votee varchar(12),vote_numbers int(4)主码)
——解决方案——————–
顺藤摸瓜调试就可以了。
输出POST值看看得到没有;
再看看mysql连接成功没;
看看查询执行有效不;
——解决方案——————–
你并没有说清除你到底遇到了什么麻烦
给代码最上面加上一行 error_reporting(E_ALL | E_NOTICE); 。打开错误提示,看看报什么错误,然后都贴出来
另外粗略的看了一下 $SetCookie(“already_voted”,”1″); 这是什么?
” />
——解决方案——————–
数据没有存到数据库里去,应该是没有接收到值,你们做一个IF判断吧,判断有没有接到值再村数据库