任何人都可以帮助我吗?我正在尝试将图像作为LONGBLOB
上传到数据库但是当我检查数据库时,上传的图像只有12 B而不是148KiB,因此无法显示!!
我想将图像上传到文件上并将图像路径存储在数据库中,但我不知道该怎么做,因为我想在表格上显示与组件信息/细节相对应的图像。
<?php
include "conn.php";
if(isset($_POST['submit'])) {
$comp_id=$_POST['comp_id'];
$compname=$_POST['compname'];
$image=$_POST['image'];
$description=$_POST['description'];
$category=$_POST['category'];
$subcat=$_POST['subcat'];
$tech_id=$_POST['tech_id'];
$query = mysql_query("INSERT INTO `resourcesys`.`ecomp_t`
(`comp_id`,`compname`,`image`,`description`,`category`,`subcat`,`tech_id`)
VALUES ('$comp_id','$compname','$image','$description','$category','$subcat','$tech_id')")
or die(mysql_error());
echo "<script>alert('Your component has been added successfully !!');</script>";
}
答案 0 :(得分:1)
如果没有发布任何代码,很难调试您的特定用例。
作为替代(并且,在我看来,更好)回答您的原始问题,我认为,根据您尝试对您的应用程序执行的操作,存储图像可能不是最好的主意。使用本地文件系统操作文件时调用的开销要低得多。
您尝试做的事情有一些用例(例如,如果您需要事务完整性,或者您一直使用&lt; 250kB图像文件)。无论哪种方式都有严重的利弊。
以下是关于辩论的一些好文章:
Storing Images in DB - Yea or Nay?
Is it a bad practice to store large files (10 MB) in a database?
相反,我会使用更传统的方法,例如使用表单来收集用户输入,验证安全性,以及将文件发布到服务器。