php - 如何从查询中获取结果并将结果插入到其他表中?

标签 php mysql mysqli

我查询了需要结果的数据库,然后将其存储在一个变量中。然后我会将变量传递给 INSERT INTO 语句,但由于某种原因我的代码不起作用。这是我的代码/

$query = "SELECT * from animals where old= 1 AND user_id=".$_SESSION['user_id'];
$result = mysqli_query(mysqli_connect("","","", ""), $query);


while ($row = mysqli_fetch_array($result))
{
    $variable[] = $row['number'];
}

//现在我将把 $variable 传递给 INSERT INTO 语句

if(isset($_POST['submit_d']))
{    
    foreach($variable as $var)
    {
        $query="INSERT INTO selectedanimals(number) VALUES ({$var},2)";
        mysqli_query($con, $query) or die (mysql_error());
    }
?>
<script>
    alert("Animal added.");
    self.location="chooseAnimals.php";
</script>
<?php
    }
?>

最佳答案

您可以在单个查询中为此目的使用 INSERT INTO ... SELECT:

INSERT INTO selectedanimals (number)
SELECT number
FROM animals
WHERE old = 1 AND user_id = some_id

PHP代码:

$query = "INSERT INTO selectedanimals (number) ";
$query.= "SELECT number FROM animals WHERE old = 1 AND user_id = ".$_SESSION['user_id'];
mysqli_query($con, $query) or die (mysql_error());

关于php - 如何从查询中获取结果并将结果插入到其他表中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42554884/

相关文章:

php - SQL插入语法错误

php - 使用 PHP 的 simpleXML 解析 XML

php - 如何在条形图mysql中回显carno的名称

mysql - 准备好的语句 Mysql

mysql - mysql优化器中的奇怪查询

php - mysqli查询错误,不知道哪里出了问题

php - 动态表单字段插入

php - 来自 MYSQL 的简单下拉列表 PHP 代码

PHP PDO 最后插入 ID

mysql - 使用 WHERE、GROUP BY 和 ORDER BY