Graph 如何使用jsapi显示图形
我使用php,我想创建图形(线图)。这是我的代码:Graph 如何使用jsapi显示图形,graph,Graph,我使用php,我想创建图形(线图)。这是我的代码: <html> <?php mysql_connect("localhost","root",""); mysql_select_db("sperformance"); $query = mysql_query("SELECT * FROM stud_details WHERE email='nazirah.mnazir@gmail.com';"); $result = mysql_query($query) or di
<html>
<?php
mysql_connect("localhost","root","");
mysql_select_db("sperformance");
$query = mysql_query("SELECT * FROM stud_details WHERE email='nazirah.mnazir@gmail.com';");
$result = mysql_query($query) or die ("Error in query: $query. ".mysql_error());
while($row = mysql_fetch_row($result)) {
?>
<head>
<script type="text/javascript" src="https://www.google.com/jsapi"></script>
<script type="text/javascript">
google.load("visualization", "1", {packages:["corechart"]});
google.setOnLoadCallback(drawChart);
function drawChart() {
var data = google.visualization.arrayToDataTable([
['x', 'CGPA' ],
['Semester 1', <?php echo $row[1] ?> ],
['Semester 2', <?php echo $row[2] ?> ],
['Semester 3', <?php echo $row[3] ?> ],
['Semester 4', <?php echo $row[4] ?> ],
['Semester 5', <?php echo $row[5] ?> ],
['Semester 6', <?php echo $row[6] ?> ],
['Semester 7', <?php echo $row[7] ?> ],
['Semester 8', <?php echo $row[8] ?> ],
['Semester 9', <?php echo $row[9] ?> ],
['Semester 10', <?php echo $row[10] ?> ],
['Semester 11', <?php echo $row[11] ?> ],
['Semester 12', <?php echo $row[12] ?> ],
]);
var options = {
title: 'Student Performance'
};
var chart = new google.visualization.LineChart(document.getElementById('chart_div'));
chart.draw(data, options);
}
</script>
</head>
<body>
<div id="chart_div" style="width: 1300px; height: 500px;"></div>
</body>
<?php
}
?>
</html>
当我运行时,它在第7行显示错误,
警告:mysql_query()要求参数1为字符串。有人能帮我吗?谢谢。嗯。。。为什么要两次调用同一个函数mysql\u query? 尝试替换以下行:
$query="SELECT * FROM stud_details WHERE email='nazirah.mnazir@gmail.com'";
$result = mysql_query($query) or die ("Error in query: $query. ".mysql_error());
我宁愿使用预先准备好的语句(使用MySQLi或PDO),或者至少在使用它们之前对值进行真正的转义,比如:
$email='nazirah.mnazir@gmail.com';// or whatever so this one can have different values.
$query = sprintf("SELECT * FROM stud_details WHERE email='%s'",mysql_real_escape_string($email));
$result = mysql_query($query);
希望对您有用。当我更换编码时,没有错误,但图形没有显示。你能告诉我为什么图形没有显示吗?谢谢。在您的代码中:
$query=mysql\u query(“选择…”)
已经查询数据库,因此$query包含一个资源(resultset),在下一行中,您尝试再次查询数据库:$result=mysql\u query($query)
但是mysql\u query希望第一个参数是字符串(查询字符串不是资源也不是结果集)。由于您发送的是一个resultset,而不是字符串,因此调用会抱怨您收到的警告,并且由于您试图从$result获取结果(由于调用失败,此时为null),因此没有数据可获取。希望这能澄清;)