Cześć
Mam problem z wyswietleniem wykresu. Może podpowiecie gdzie tkwi błąd?
Na stronie zamieściłem pole wyboru SELECT. Wybranie określonego pola przesyła do pliku getuser.php numer wybranej opcji. W oparciu o ten numer pobierane są w pliku getuser.php dane osoby z bazy danych, a następnie wyświetlane. W pliku tym jest także wykres w oparciu o FusionCharts.
Wywołanie samego pliku w przeglądarce np. getuser.php?q=2 wyświetla prawidłowo zawartosć pliku. Natomiast wywołanie go poprzez txtHint w index.php z ponizszego skryptu wyświetla dane bez wykresu. W miejscu wykresu jest jedynie słowo FusionCharts. pochodzace z wykres.php
Za wszystkie rady bardzo dzięki.
Pole wyboru w index.php
<select name="users" onchange="showUser(this.value)">
<option value="1" >Adam</option>
<option value="2" >Jan</option>
.
.
.
</select>
w sekcji <head> mam
<script type="text/javascript">
function showUser(str)
{
if (str=="")
{
document.getElementById("txtHint").innerHTML="";
return;
}
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("txtHint").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","./getuser.php?q="+str,true);
xmlhttp.send();
}
</script>
Wywołanie w cześci <body>
<div id="txtHint"></div>
Plik getuser.php
<?php
$q=$_GET["q"];
include('db_fns.php');
$sql="SELECT * FROM baza WHERE id = '".$q."'";
$result = mysql_query($sql);
while($row = mysql_fetch_array($result))
{
echo "<table style=width:100%; border='0'>";
echo "<tr>";
echo "<td>";
echo "<table style=width:100%; border='0'>";
echo "<tr>";
echo "<th WIDTH=130>Imie</th>";
echo "<td>" . $row['imie'] . "</td>";
echo "</tr>";
echo "<tr>";
echo "<th>Nazwisko</th>";
echo "<td>" . $row['nazwisko'] . "</td>";
echo "</tr>";
$glos1=$row['tak'];
$glos2=$row['nie'];
echo "</table>";
echo "</td>";
$string = <<<XML
<graph caption='Sonda' xAxisName='' yAxisName='' decimalPrecision='0' formatNumberScale='0'>
<set value='$glos1' color='8BBA00' />
<set value='$glos2' color='9D080D' />
</graph>
XML;
$xml = new SimpleXMLElement($string);
echo $xml->asXML("./Data/wykres3D.xml");
mysql_close($connection);
echo "<td>";
echo "<table style=width:100%; border='0' bordercolor='#8c0c0c' frame='void'>";
echo "<tr>";
echo "<td WIDTH=112 ALIGN=center VALIGN=top><img src=" . $row['foto'] . "></td>";
echo "</tr>";
echo "<tr>";
echo join( '', file( 'wykres.php' ) ) ;
echo "</tr>";
echo "</table>";
echo "</td>";
echo "</tr>";
echo "</table>";
}
?>
plik wykres.php
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
<script language="JavaScript" src="./JSClass/FusionCharts.js"></script>
<script type="text/javascript" src="./jquery.js"></script>
<script type="text/javascript" src="./script.js"></script>
</head>
<body>
<div id="wykres">
<table width="%" border="1" bordercolor="#8c0c0c" frame="void" cellspacing="0" cellpadding="1" align="center">
<tr>
<td valign="top" class="text" align="center"> <div id="chartdiv" align="center"> FusionCharts. </div>
<script type="text/javascript">
var chart = new FusionCharts("./Charts/FCF_Column3D.swf", "ChartId", "165", "200");
chart.setDataURL("./Data/wykres3D.xml");
chart.render("chartdiv");
</script> </td>
</tr>
</table>
</div>
</body>
</html>