Php 将图像上载到临时图像文件夹
我有一个托管网站,我想上传我的图像到图像目录,并链接到mysql数据库的图像 我所做的: 将表单创建为:Php 将图像上载到临时图像文件夹,php,Php,我有一个托管网站,我想上传我的图像到图像目录,并链接到mysql数据库的图像 我所做的: 将表单创建为: <form method=POST align=center enctype="multipart/form-data"> <input type=file name=image> 这段代码实际上只是将图像插入数据库,而不是将图像复制到images文件夹中 我搜索和发现的: 您不应该将http://URL指定为$uploaddir,而应该指定一个相对于运行php脚本
<form method=POST align=center enctype="multipart/form-data">
<input type=file name=image>
这段代码实际上只是将图像插入数据库,而不是将图像复制到images文件夹中
我搜索和发现的:
您不应该将http://URL指定为$uploaddir,而应该指定一个相对于运行php脚本的路径的路径
所以我真正想做的是:
1-将图像复制到网站上的图像文件夹目录中。
2-将复制的图像链接到数据库。您缺少名称“mage” 不是:
copy($\u文件['tmp\u name']['name'],$target,true);
但是:
move\u上传的文件($\u文件['image']['tmp\u name'],$target);
如果该操作失败(或filesize=0),那么在将其插入数据库之前,您可能应该首先尝试移动
如果文件操作和数据库操作失败,请检查它们:回滚
额外:
数据库表中是否只有一列?
使用上传的文件名是否明智?可能会发生重复。
检查文件后,我会将原始名称插入数据库。获取该记录的自动增量id。将文件重命名为。/1234.jpg
通过数据库,您可以稍后使用原始名称。但是对于简单的应用程序,此编号可能太过简单。根据给定的数据,您必须关闭表单标记,然后给出表单操作=”属性来指定url。若您的操作系统是linux,那个么请检查设置中的文件夹权限,若字段名设置为唯一,也请检查数据库表? 然后在给定的url文件中编写以下代码PHP代码:
if (isset($_FILES['image']['name']) && $_FILES['image']['error']
== 0) {
$uploads_dir = '/uploads';
$temp_file = $_FILES['image']['tmp_name'];
$name = basename($_FILES["image"]["name"]);
if(move_uploaded_file($temp_file, "$uploads_dir/$name")){
//Fire Insert Query For Insert image name in your database
}
else
{
echo "Error !! , Your image not uploaded.";
}
}
?>
您是否检查了要上载到的文件夹的权限?Apache需要写访问权限。很好,我可以在5分钟内接受你的代码。。但是如何在数据库中存储图像链接呢?不,我有许多列,如id_news auto increment、name_news……等等。如果您有更多的列,那么您应该在insert查询中提及它们或使用的列<代码>插入选项卡(图像名称、foo、bar)值($target、'foo、'bar')代码>(除了逃离输入以确保输入中的“否”不会造成任何伤害之外
if (isset($_FILES['image']['name']) && $_FILES['image']['error']
== 0) {
$uploads_dir = '/uploads';
$temp_file = $_FILES['image']['tmp_name'];
$name = basename($_FILES["image"]["name"]);
if(move_uploaded_file($temp_file, "$uploads_dir/$name")){
//Fire Insert Query For Insert image name in your database
}
else
{
echo "Error !! , Your image not uploaded.";
}
}
?>