3
在此代碼中,我成功地從mySQL數據庫中獲取了五個隨機文本字符串,並且可以通過PHP回顯它們。將mySQL查詢中的文本添加到畫布上
而不是通過PHP回顯它們,我寧願將它們顯示爲附加代碼的畫布中的文本(代替「Hello World」文本)。
任何想法,我將不得不這樣做呢?
<HTML>
<HEAD>
<TITLE></TITLE>
</HEAD>
<BODY>
<canvas id="myCanvas" width="200" height="100" style="border:1px solid #000000;">
</canvas>
<script>
var c = document.getElementById("myCanvas");
var ctx = c.getContext("2d");
ctx.font = "30px Arial";
ctx.fillText("Hello World",10,50);
</script>
<?PHP
//CREATE CONNECTION
$con=mysqli_connect('localhost','','');
//select database
if(!mysqli_select_db($con,'test')) {
echo "database not selected";
}
//select query
//select random question
$sql=
"select * from `general knowledge`
order by rand()
limit 5";
//execute sql query
$records= (mysqli_query($con,$sql));
while ($row=mysqli_fetch_array($records)) {
echo "<P>";
echo "".$row['Question Text']."";
}
?>
太棒了!謝謝!我知道下一步是建立一些for循環來增加問題以及它顯示的位置。到目前爲止,我只是圍繞顯示問題的代碼嘗試了這一點(它沒有工作!):for(i = 1; i <4; i ++){ctx.fillText(「<?= $ questions [i ]>」,10,65)?; } – JayJay
那麼循環將不得不由PHP生成,但在我將其添加到我的答案之前:你不是真的想把5個文本放在同一個位置,對吧? – trincot
啊哈!所以你需要PHP代碼中的問題編號循環,遞增1,另一個循環遞增,例如, 12爲框中的位置。 :)時間來閱讀一些PHP! – JayJay