Php 使用3个不同的表更新第4个表

Php 使用3个不同的表更新第4个表,php,mysql,Php,Mysql,我有3个不同的表,我想用3个表中每个表的特定列更新第4个表,它们都有一个公共键。我可以从phpmyadmin中执行此操作,但我想使用php脚本来执行此操作。 这是我试过的,但没用 if (isset($_GET)) { $update = ''; $count="SELECT * FROM test2 "; foreach ($connect->query($count) as $row) { $term_total1=$

我有3个不同的表,我想用3个表中每个表的特定列更新第4个表,它们都有一个公共键。我可以从phpmyadmin中执行此操作,但我想使用php脚本来执行此操作。 这是我试过的,但没用

if (isset($_GET)) { 
    $update = '';
    $count="SELECT * FROM test2   ";          
    foreach ($connect->query($count) as $row) {
         $term_total1=$row['english'];
         $sql = "UPDATE total set `f_test` ='$term_total1'  ";
         foreach ($connect->query($count) as $row) {

             echo "success<br>" . $term_total1;
         }
    }  
}else{
    echo "try another method" . mysqli_error($connect);
}
if(isset($\u GET)){
$update='';
$count=“从测试2中选择*”;
foreach($connect->query($count)作为$row){
$term_total1=$row['english'];
$sql=“更新总集`f\u test`='$term\u total1';
foreach($connect->query($count)作为$row){
回应“成功”$term\u total1;
}
}  
}否则{
echo“尝试另一种方法”。mysqli_错误($connect);
}
我已经试了好几天了

对其他两个表重复了相同的代码,但不起作用。
可以在一个查询中完成吗?如果是,那么how

我很确定您使用
foreach
循环结果集的方法是不正确的。在更新的代码中,您也没有唯一的标识符,所以您的代码只是要批量更新表。这是您当前的代码,希望您能够理解如何从
mysqli

$count="SELECT * FROM test2";     
if($res = $connect->query($count)){
    while($row = $res->fetch_assoc()){
        $term_total1 = $row['english'];
        $sql = "UPDATE total set `f_test` = '{$term_total1}'";
        if($res2 =$connect->query($sql)){
            echo "success<br>" . $term_total1;
        }else{
            print_r($connect->error());
        }

    }
}else{
     print_r($connect->error());
}
$count=“从test2中选择*”;
如果($res=$connect->query($count)){
而($row=$res->fetch_assoc()){
$term_total1=$row['english'];
$sql=“UPDATE total set`f\u test`='{$term\u total1}';
如果($res2=$connect->query($sql)){
回应“成功”$term\u total1;
}否则{
打印($connect->error());
}
}
}否则{
打印($connect->error());
}

您确实看到您没有关闭第一行的双引号文本。。。不是吗?很抱歉,这只是一整套输入错误,
Foreach($connect->query($sql)作为$row){
实际上破坏了脚本,因为它一直在执行查询?所以这甚至不是正确的源代码?所以你只是希望这里有人猜到解决方案?因此,我退出了。编辑:OP删除了他的评论;这就像“这不是我刚才在手机上键入的代码”!我建议你上笔记本电脑发布实际代码!是的,我有一个唯一的标识符。刚刚进行了更正,弹出一个致命错误,未捕获错误:在Boolean上调用成员函数fetch_assoc(),这意味着
$connect->query($count);
失败。请确保您的
$count
查询是正确的,并确保您确实有一个数据库连接。更新了我的代码以显示您必须启用调试消息。在不使用while循环的情况下,它将得到更新,但仅使用一个值而不是所有值。有关第二次查询的错误报告,请参阅更新的代码。编辑:我的错误查询2不应该有一个
fetch_assoc
,因为它是一个
update
查询。更新的代码反映了这一点。哦,对不起。它现在工作正常。添加了where子句,“where s_I'd=”。$row['s_id']。“;