SQL query error while trying to put a file in the database
Posted
by
DaGhostman Dimitrov
on Stack Overflow
See other posts from Stack Overflow
or by DaGhostman Dimitrov
Published on 2012-10-26T10:58:23Z
Indexed on
2012/10/26
11:00 UTC
Read the original article
Hit count: 198
Hey Guys I have a big problem that I have no Idea why.. I have few forms that upload files to the database, all of them work fine except one.. I use the same query in all(simple insert). I think that it has something to do with the files i am trying to upload but I am not sure.
Here is the code:
if ($_POST['action'] == 'hndlDocs') {
$ref = $_POST['reference']; // Numeric value of
$doc = file_get_contents($_FILES['doc']['tmp_name']);
$link = mysqli_connect('localhost','XXXXX','XXXXX','documents');
mysqli_query($link,"SET autocommit = 0");
$query = "INSERT INTO documents ({$ref},
'{$doc}',
'{$_FILES['doc']['type']}')
;";
mysqli_query($link,$query);
if (mysqli_error($link)) {
var_dump(mysqli_error($link));
mysqli_rollback($link);
} else {
print("<script> window.history.back(); </script>");
mysqli_commit($link);
}
}
The database has only these fields:
DATABASE documents (
reference INT(5) NOT NULL, //it is unsigned zerofill
doc LONGBLOB NOT NULL, //this should contain the binary data
mime_type TEXT NOT NULL // the mime type of the file php allows only application/pdf and image/jpeg
);
And the error I get is :
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 '00001, '????' at line 1
I will appreciate every help. Cheers!
© Stack Overflow or respective owner