【发布时间】:2015-08-17 20:45:13
【问题描述】:
我正在尝试创建第三个表,从两个不同的表中获取两个索引,以便使用以下代码在它们之间创建关联:
$query1 = "select iduniverse from universe";
$query2 = "select idfiles from files";
$query3 = "select iduniFiles from uniFiles where filesId = ? and universeId = ?";
$query4 = "insert into uniFiles (filesId, universeId) values (?,?)";
if($stmt1 = $conn->prepare($query1)){
if($stmt2 = $conn->prepare($query2)){
if($stmt3 = $conn->prepare($query3)){
if($stmt4 = $conn->prepare($query4)){
$stmt1->execute();
$stmt1->bind_result($iduniverse);
while($stmt1->fetch()){
$stmt2->execute();
$stmt2->bind_result($idfiles);
while($stmt2->fetch()){
$stmt3->bind_param("ii", $idfiles, $iduniverse);
$stmt3->execute();
$stmt3->store_result();
if($stmt3->num_rows == 0){
$stmt4->bind_param("ii", $idfiles, $iduniverse);
$stmt4->execute();
}
}
}
}
$stmt4->free_result();
}
$stmt3->free_result();
}
$stmt2->free_result();
}
$stmt1->free_result();
但是,如果我在第二个 while 循环后回显“here\n”:
while($stmt2->fetch()){
echo "here\n";
...
当我启动我的代码时,我在屏幕输出上看不到任何内容,而且表 uniFiles 仍然为空。
我已经通过 SQL 浏览器检查了查询,并且没有任何问题。所以我不明白错误在哪里。
我的脚本有什么问题?
【问题讨论】:
标签: php mysqli while-loop