你能指导我如何上传图片在MySql数据库中通过PHP。我只有几天的PHP经验。我可以使用任何方法,将文件保存在目录中,并将其路径保存在数据库中,或者将整个图像保存在数据库中。
我将感谢你,如果你能提供一些代码或链接参考。我已经跟踪了一些链接,但这些链接是错误的。
发布于 2011-02-04 16:38:51
这将在一个目录中插入图像,并且图像名称将存储在数据库中,希望这将帮助您开始
<form name="aaa" method="post" enctype="multipart/form-data">
<input type="file" name="image">
<input type="submit" name="submit">
</form>
<?php
if(isset($_POST['submit'])) {//添加您自己的镜像名称$name = $_FILES' image ';$extension = strrchr($name,‘.);$image_name = "whatever_you_put".$extension;
move_uploaded_file($_POST['image']['tmp_name'],"/image/".$image_name) //where image is a directory where image will be uploaded
mysql_query("insert into table_name VALUES ('".$image_name."')");
}发布于 2011-02-04 16:31:06
我建议你在MySQL中避免这种情况,因为这个数据库引擎缺少一个好的SQL二进制追加聚合函数。
这意味着如果你要保存大图片到MySQL,你将需要在一次行程中上传它们,这是非常糟糕的,因为如果你的图片大小是- f.e- 8MB,它将在你的服务器中占用8MB内存,并且很可能,PHP请求将超时,因为上传,然后保存到数据库,可能需要几秒钟以上。
如果您的图像是1-2MB,那么这样做可能是一个糟糕的方法。二进制文件应该分块上传,以便占用尽可能少的内存,因为网页应该在共享主机中工作,但我不知道这是你的情况还是专用的,但不管怎样,如果不分块上传,你将浪费资源-这在大文件-的MySQL中很难实现。
最后,最好存储对文件的引用,或者使用一种约定,允许我们使用图像标识符(数据库中的ID列)让PHP脚本在某个文件夹中定位图像。
发布于 2011-02-04 16:26:20
https://stackoverflow.com/questions/4895904
复制相似问题