我的数据库中有一系列表,它们都是连续命名的(puzzle1,puzzle2,puzzle3等)。我已成功连接到数据库,并将所有包含单词“ puzzle”的表扔到数组$puzzleArray
中,然后重新排列顺序(shuffle($ puzzleArray))。然后设置一个计数变量$ count = 0;
我要做的是编写一个自定义函数,该函数在被调用时将使用被引用为puzzleArray[$count]
的表,并在fetch_assoc()
中弹出该表的内容,然后内容全部显示,增加$ count。
但是我编写的函数给了我这个错误:Undefined variable: puzzleArray
-我不确定100%如何让代码知道这是一个引用变量,而不是一个表
PHP:
require "config.php"; // connecting to database in external php
$puzzleArray = array_column(mysqli_fetch_all($conn->query("SHOW TABLES from $db_name like '%puzzle%'")),0); //putting all the tables into an array
shuffle($puzzleArray); //shuffling the array
$count = 0;
function loadNextRound(){
$sql = "SELECT * FROM $puzzleArray[$count]"; //This is where the ERROR occurs
$round = $conn->query($sql);
echo $round[0]."<br/>"; // Spitting out the name of the table
if ($round->num_rows > 0) {
while($row = $round->fetch_assoc()) {
echo $row['answer'] . " - " . $row['score'] . " - " . $row['flip'] ."<br/>"; // spitting out the contents of the table in a row
}
}
$count++; // incrementing the count
}
loadNextRound(); // calling the function