将带有FILE和POST变量的bindValue导入SQL DB

时间:2013-05-14 20:13:40

标签: php mysql

我似乎无法将所有这些变量发布到我的数据库中。当我遗漏$_POST的{​​{1}}时,它会有效。所有$file_desc变量都传递到我的数据库。这是获取变量的代码:

$_FILE

以下是运行查询的代码:

$file_name = $_FILES['image']['name'];
$tmp = explode('.', $file_name);
$file_ext = strtolower(end($tmp));
$file_size = $_FILES['image']['size'];
$file_tmp = $_FILES['image']['tmp_name'];
$file_error = $_FILES['image']['error'];
$file_desc = nl2br($_POST['desc']);

1 个答案:

答案 0 :(得分:1)

DESC是MySQL关键字,用于按降序对所选行进行排序。在你的情况下,MySQL认为它是关键字,而不是字段名称。为了让它理解它是一个字段 - 你应该把它放在撇号中:

$query = $pdo->prepare('INSERT INTO upload (name, type, size, `desc`) VALUES (?, ?, ?, ?)');

另外我建议你学习调试并注意返回的错误:我打赌MySQL告诉你一些关于“第1行desc附近的错误语法”的事情。