我想使用PHP将数据插入MySQL表中。
这是我的代码:
<?php
$het = $_GET['het'];
header('Content-Type: application/json; Charset=UTF-8');
$connection = mysqli_connect("localhost:8889","root","root","imreigye_wp") or die("Error " . mysqli_error($connection));
mysqli_set_charset($connection, 'utf8mb4');
//This SQL string is really long
$sql = "INSERT INTO `rendelesiidok`(`Ev`, `Het`, `Nap`, `BattaR`, `BattaT`, `HacsekR`, `HacsekT`, `MolnarR`, `MolnarT`, `Pentek`) VALUES ('2016','" . $het . "','1','','','','','','',''); INSERT INTO `rendelesiidok`(`Ev`, `Het`, `Nap`, `BattaR`, `BattaT`, `HacsekR`, `HacsekT`, `MolnarR`, `MolnarT`, `Pentek`) VALUES ('2016','" . $het . "','2','','','','','','',''); INSERT INTO `rendelesiidok`(`Ev`, `Het`, `Nap`, `BattaR`, `BattaT`, `HacsekR`, `HacsekT`, `MolnarR`, `MolnarT`, `Pentek`) VALUES ('2016','" . $het . "','3','','','','','','',''); INSERT INTO `rendelesiidok`(`Ev`, `Het`, `Nap`, `BattaR`, `BattaT`, `HacsekR`, `HacsekT`, `MolnarR`, `MolnarT`, `Pentek`) VALUES ('2016','" . $het . "','4','','','','','','',''); INSERT INTO `rendelesiidok`(`Ev`, `Het`, `Nap`, `BattaR`, `BattaT`, `HacsekR`, `HacsekT`, `MolnarR`, `MolnarT`, `Pentek`) VALUES ('2016','" . $het . "','5','','','','','','','');";
mysqli_query($connection, $sql) or die("ERROR: " . mysqli_error($connection));
mysqli_close($connection);
?>
当我运行代码时,我得到一个MySQL错误:
您的SQL语法有错误;在第1行的"INSERT INTO
rendelesiidok
(Ev
、Het
、Nap
、BattaR
、BattaT
、HacsekR
然而,如果我通过phpMyAdmin运行MySQL查询,它运行起来不会有问题。这是我的MySQL日志:
160401 23:07:22 15 Connect root@localhost on imreigye_wp
15 Query SET NAMES utf8mb4
15 Query INSERT INTO `rendelesiidok`(`Ev`, `Het`, `Nap`, `BattaR`, `BattaT`, `HacsekR`, `HacsekT`, `MolnarR`, `MolnarT`, `Pentek`) VALUES ('2016','14','1','','','','','','',''); INSERT INTO `rendelesiidok`(`Ev`, `Het`, `Nap`, `BattaR`, `BattaT`, `HacsekR`, `HacsekT`, `MolnarR`, `MolnarT`, `Pentek`) VALUES ('2016','14','2','','','','','','',''); INSERT INTO `rendelesiidok`(`Ev`, `Het`, `Nap`, `BattaR`, `BattaT`, `HacsekR`, `HacsekT`, `MolnarR`, `MolnarT`, `Pentek`) VALUES ('2016','14','3','','','','','','',''); INSERT INTO `rendelesiidok`(`Ev`, `Het`, `Nap`, `BattaR`, `BattaT`, `HacsekR`, `HacsekT`, `MolnarR`, `MolnarT`, `Pentek`) VALUES ('2016','14','4','','','','','','',''); INSERT INTO `rendelesiidok`(`Ev`, `Het`, `Nap`, `BattaR`, `BattaT`, `HacsekR`, `HacsekT`, `MolnarR`, `MolnarT`, `Pentek`) VALUES ('2016','14','5','','','','','','','')
15 Quit
注意:我已经试过使用简单的引号而不是特殊的引号。那也无济于事。
我认为mysqli_query()
不支持多个查询。你想做的事情可以写在一个查询中,如下所示:
$sql = "INSERT INTO `rendelesiidok`(`Ev`, `Het`, `Nap`, `BattaR`, `BattaT`, `HacsekR`, `HacsekT`, `MolnarR`, `MolnarT`, `Pentek`)
VALUES ('2016','" . $het . "','1','','','','','','',''),
('2016','" . $het . "','2','','','','','','',''),
('2016','" . $het . "','3','','','','','','',''),
('2016','" . $het . "','4','','','','','','',''),
('2016','" . $het . "','5','','','','','','','')";
有关更多信息,请访问MySQL文档