我的代码 -
$things = mysql_real_escape_string(implode(',', $_POST['things']),$link);
$q = "INSERT INTO tblslider(src) VALUES ('".$things."')";
print_r($q);
$result = $mysqli->query($q) or die(mysqli_error($mysqli));
Run Code Online (Sandbox Code Playgroud)
但是我的查询正在生成,
INSERT INTO tblslider(src) VALUES ('4368122.jpg,5440051.jpg,1047428.jpg') 但应该是
INSERT INTO tblslider(src) VALUES ('4368122.jpg'),('5440051.jpg'),('1047428.jpg')因为它将它作为一个记录而不是三个.
你可以这样做:
$things = array_map('mysql_real_escape_string', $_POST['things']);
$q = "INSERT INTO tblslider(src) VALUES ('". implode("'),('", $things)."')";
Run Code Online (Sandbox Code Playgroud)
它生成(使用我的测试数据):
INSERT INTO tblslider(src) VALUES ('a.jpg'),('b.jpg'),('c.jpg')
Run Code Online (Sandbox Code Playgroud)
我忘了:只使用真实数据mysql_real_escape_string上的函数,而不是SQL字符串.在您的示例中,您将对已连接的数据应用该函数.
| 归档时间: |
|
| 查看次数: |
936 次 |
| 最近记录: |