意外的';}';在使用SQL和PHP进行图形时

意外的';}';在使用SQL和PHP进行图形时,php,sql,mysql,graph,Php,Sql,Mysql,Graph,我正在使用PHP从SQL编写一个图形。我有这个代码,但它似乎没有执行。我认为代码是对的,但显然不是 代码是: <?php header ("Content-type: image/png"); $im = imagecreatefrompng ("graphtemp.png"); $red = imagecolorallocate ($im, 255, 0, 0); $black = imagecolorallocate ($im, 0, 0, 0); mysql_connect("loc

我正在使用PHP从SQL编写一个图形。我有这个代码,但它似乎没有执行。我认为代码是对的,但显然不是

代码是:

<?php
header ("Content-type: image/png");
$im = imagecreatefrompng ("graphtemp.png");
$red = imagecolorallocate ($im, 255, 0, 0);
$black = imagecolorallocate ($im, 0, 0, 0);
mysql_connect("localhost", "user", "password");
mysql_query("USE database");
$optionsquery = mysql_query("SELECT * FROM brands");
$numoptions = mysql_num_rows($optionsquery);
$pollquery = mysql_query("SELECT * FROM categories");
$numvotes = mysql_num_rows($pollquery);
$xval = 30;
$barwidth = floor(300/$numoptions);
for ($i=0;$i<=($numoptions-1);$i++) 
{
    $voteoption = mysql_result($optionsquery,$i,'name');
    $votevalue = mysql_result($optionsquery,$i,'value');
    $currentnumquery = mysql_query("SELECT * FROM categories WHERE vote='$votevalue'");
    $currentnum = mysql_num_rows($currentnumquery);
    $per = floor(($currentnum/$numvotes)*184);
    $rper = floor(($currentnum/$numvotes)*100);
    imagefilledrectangle ($im, $xval, (200-$per), ($xval+$barwidth), 200, $red);
    imagerectangle ($im, $xval, (200-$per), ($xval+$barwidth), 200, $black);
    imagestring ($im, 1, ($xval+($barwidth/2)), 205, $voteoption, $black);
    imagestring ($im, 2, ($xval+($barwidth/2)), ((200-$per)-15), "$rper%", $bla);
    $xval+=($barwidth+10)
}
imagepng($im);
?>


谢谢大家!这段代码似乎不起作用,这是错误日志。我也在学习PHP和SQL,因此非常感谢您的帮助。-

后面缺少一个分号

$xval+=($barwidth+10)

后面缺少一个分号

$xval+=($barwidth+10)
但正如您所看到的,我在php到达的地方放置了一个箭头,并说,什么。。此处不应有
}
:/

在PHP中,每一行命令都应该用
关闭
这样PHP就知道代码的结尾,而第二个不是第一个的一部分

26.    $xval+=($barwidth+10); // ; here
27. }
28. imagepng($im);
29. ?>
将冒号放在这里告诉php继续执行下一个命令

但正如您所看到的,我在php到达的地方放置了一个箭头,并说,什么。。此处不应有
}
:/

在PHP中,每一行命令都应该用
关闭
这样PHP就知道代码的结尾,而第二个不是第一个的一部分

26.    $xval+=($barwidth+10); // ; here
27. }
28. imagepng($im);
29. ?>

将冒号放在这里告诉php继续执行下一个命令。

您在
($barwidth+10)
之后缺少一个分号。您是否阅读了错误,如果您仔细看,答案就在您面前。@RobertPitt:他为什么要费心呢?只需复制并粘贴到SO中,不需要大脑活动。你在
($barwidth+10)
后缺少一个分号。你读过错误了吗?如果你仔细看,答案就在你面前。@RobertPitt:他为什么要麻烦?只需复制并粘贴到其中,不需要大脑活动。如果这是一个新错误,那么它应该是一个新问题。但考虑到所有这些“非图像资源,布尔给定”意味着某个GD调用(图像*()函数)在某个点上失败并返回布尔FALSE,它没有检查并在以后继续重用。如果这是一个新错误,那么它应该是一个新问题。但是给定所有这些“非图像资源,boolean给定”意味着某个GD调用(image*()函数)在某个点失败并返回一个boolean FALSE,它没有检查并在以后继续重用。
26.    $xval+=($barwidth+10); // ; here
27. }
28. imagepng($im);
29. ?>