我正在尝试获取一个系统,其中更改数组数据以匹配其在另一个 MySQL 表中的条目 ID。我是从 PHP 脚本的复选框中获取的。
这是代码
$insertSQL2 = "INSERT INTO test (Testing) VALUES SELECT Course_id FROM courses WHERE Code IN ";
foreach ($_POST['CheckboxGroup1'] as $Q){
$Q = mysql_real_escape_string($Q);
$insertSQL2.= "('$Q'), ";
}
$insertSQL2 = rtrim($insertSQL2, ", ");
我可以在需要时获得原始数据输出。例如选中四个复选框后,它们将以单独的行(我需要)放在表格中。但是,当我尝试更改它以匹配代码时(当检查框=表中的代码时,将ID放置而不是代码),我会收到以下错误。
You have an error in your SQL syntax; check the manual that corresponds to your MySQL
server version for the right syntax to use near 'SELECT Course_id FROM courses WHERE
Code IN ('CNMD'), ('EEM')' at line 1
有没有人有任何可能的解决方案?
最佳答案
INSERT
语句可以使用 VALUES
或 SELECT
语法。不是都。
你可能想要第二个:
INSERT INTO test (Testing)
SELECT Course_id
FROM courses
WHERE Code IN ('CNMD', 'EEM') ;
关于PHP MySQL 数组 SELECT、FROM、WHERE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10660176/