我正在尝试使用我从之前的sql语句获取的id来获取该id的表信息,但$query3
总是返回FALSE
而我似乎无法弄清楚。我连接到数据库,我有权访问此表。在每种情况下,id也是正确的。
CODE
global $con;
$query = $con->prepare("SELECT * FROM allTeams WHERE Coach = ?");
$query->bind_param('s',$username);
$query->execute();
$query->bind_result($Id,$time,$day,$coach,$hCoach);
$date = date('d-m');
$array = array();
while($row = $query -> fetch())
{
var_dump($Id);
echo "<br />";
$teamId = strval($Id);
$query3 = $con -> query("DESCRIBE `$teamId`");
var_dump($query3);
echo "<br />";
}
输出
int(1022)
bool(false)
int(1023)
bool(false)
int(2033)
bool(false)
答案 0 :(得分:1)
您正尝试在同一个$con
对象上运行查询,而其中一个已经打开。你不能这样做。
您需要做的是致电store_result
以关闭第一个查询,然后再运行新查询。
global $con;
$query = $con->prepare("SELECT * FROM allTeams WHERE Coach = ?");
$query->bind_param('s',$username);
$query->execute();
$query->store_result();
$query->bind_result($Id,$time,$day,$coach,$hCoach);
$date = date('d-m');
$array = array();
while($row = $query -> fetch())
{
var_dump($Id);
echo "<br />";
$teamId = strval($Id);
$query3 = $con -> query("DESCRIBE `$teamId`");
var_dump($query3);
echo "<br />";
}