我有添加图像到数据库的问题,它是插入所有填充图像得到错误,它没有添加图像。 这里是代码:PHP将图像上传到数据库中
<?php
include '../dbc.php';
$message='';
if(isset($_POST["submit"])){
$name = $_POST["name"];
$descr = $_POST["descr"];
$price = $_POST["price"];
$quantity = $_POST["quantity"];
$item_number = $_POST["item_number"];
$cat = $_POST["cat"];
$file = $_FILES['image']['tmp_name'];
if((!$name) || (!$desc) || (!$price) || (!$quantity) || (!$item_number) ||
(!$cat) || (!$image)){
$message = "Fill all inputs!";
}
$name_query = mysql_query("SELECT name FROM products WHERE name='$name'
LIMIT 1") or die("Can't check name!");
$count_name = mysql_num_rows($name_query);
if($count_name > 0){
$message = "This product exist!";
}else{
$image = addslashes(file_get_contents($_FILES['image']['tmp_name']));
$query= mysql_query("INSERT INTO products (name, description,
price,quantity, item_number, category, image) VALUES
('$name', '$descr', '$price', '$quantity', '$item_number',
'$cat', '$image')") or die("Can't addi");
$message="Product is added!";
}
}
?>
的Theres错误:警告:file_get_contents()函数:文件名不能为空
有你把'ENCTYPE = “的multipart/form-data的”'在你的形式? –
所有'mysql_ *'函数都被弃用,不应该被使用。 'addslashes'也不适合逃避需要进入数据库的数据。第三,您应该考虑使用文件系统来保存文件,并将文件名存储在数据库中。 – Arjan
相关:http://stackoverflow.com/questions/3748/storing-images-in-db-yea-or-nay –