为什么我的PHP图片上传代码可以实现插入数据库但图片不能插入文件夹中?
代码:<!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http://www.w3.org/TR/xhtm...
代码:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>图书</title>
</head>
<body>
<form action="shu.php" enctype="multipart/form-data" method="post" name="shu">
商品描述:<input name="describe" type="varchar" /><br />
商品价格:<input name="price" type="varchar" /><br />
电话:<input name="tele" type="varchar" /><br />
用户:<input name="user" type="varchar" /><br />
上传:<input name="upfile" type="file"><br />
<input type="submit" name="submit" value="上传" />
<input type="reset" name="reset" value="重置" /><br />
<p>
<input type="hidden" name="date" value="<?php echo date("Y-m-d H:i:s") ;?>">
</form>
<?php
if(@is_uploaded_file($_FILES['upfile']['tmp_name']))
{
$upfile=$_FILES["upfile"];
$describe=$_POST['describe'];
$price=$_POST['price'];
$tele=$_POST['tele'];
$user=$_POST['user'];
$date=$_POST['date'];
$name=$upfile["name"];
$type=$upfile["type"];
$size=$upfile["size"];
$tmp_name=$upfile["tmp_name"];
$error=$upfile["error"];
}
if($error=='0')
{
move_uploaded_file($tmp_name,'upload1/'.$name);
$url="upload1"."/"."$name";
include ("conn.php");
mysql_query("set names utf8");
$sql="insert into flea_book(id,book_name,book_describe,book_price,book_tele,book_image,book_user,book_date)
values('','$name','$describe','$price','$tele','$url','$user','$date')";
$result=mysql_query($sql) ;
if($result)
{
echo "<script>alert('指定的文件已上传!');</script>";
echo "<meta http-equiv='refresh' content='1; url=shu.php'>";
}
else
{
echo"<script>alert('文件上传失败!');</script>";
echo "<meta http-equiv='refresh' content='1;url=shu.php'>";
}
}
?>
</body>
</html> 展开
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>图书</title>
</head>
<body>
<form action="shu.php" enctype="multipart/form-data" method="post" name="shu">
商品描述:<input name="describe" type="varchar" /><br />
商品价格:<input name="price" type="varchar" /><br />
电话:<input name="tele" type="varchar" /><br />
用户:<input name="user" type="varchar" /><br />
上传:<input name="upfile" type="file"><br />
<input type="submit" name="submit" value="上传" />
<input type="reset" name="reset" value="重置" /><br />
<p>
<input type="hidden" name="date" value="<?php echo date("Y-m-d H:i:s") ;?>">
</form>
<?php
if(@is_uploaded_file($_FILES['upfile']['tmp_name']))
{
$upfile=$_FILES["upfile"];
$describe=$_POST['describe'];
$price=$_POST['price'];
$tele=$_POST['tele'];
$user=$_POST['user'];
$date=$_POST['date'];
$name=$upfile["name"];
$type=$upfile["type"];
$size=$upfile["size"];
$tmp_name=$upfile["tmp_name"];
$error=$upfile["error"];
}
if($error=='0')
{
move_uploaded_file($tmp_name,'upload1/'.$name);
$url="upload1"."/"."$name";
include ("conn.php");
mysql_query("set names utf8");
$sql="insert into flea_book(id,book_name,book_describe,book_price,book_tele,book_image,book_user,book_date)
values('','$name','$describe','$price','$tele','$url','$user','$date')";
$result=mysql_query($sql) ;
if($result)
{
echo "<script>alert('指定的文件已上传!');</script>";
echo "<meta http-equiv='refresh' content='1; url=shu.php'>";
}
else
{
echo"<script>alert('文件上传失败!');</script>";
echo "<meta http-equiv='refresh' content='1;url=shu.php'>";
}
}
?>
</body>
</html> 展开
4个回答
展开全部
你可以判断文件是否移动成功:
$url="upload1"."/"."$name";
if(move_uploaded_file($tmp_name,$url)){
//...mysql code
}
是的话才插入数据库。
如果移动不成功则有可能:1、没有所在文件夹的权限;2、找不到upload1目录,这时可以通过is_dir('upload1')判断有无建立目录。
追问
如何查看有没有所在文件夹的权限?
追答
目录权限是针对*unix系统的,试着mkdir($newfile,0777)看是否创建成功就知道了。windows系统暂无此担忧。这是都是php手册上的,你看熟就知道。
展开全部
把你的图片文件夹设置权限为 777 (linux)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
首先 你的$name是否含有中文?
另外最好 if(!is_dir('upload1/')){
mkdir('upload1/') or die('创建目录失败');
}
另外最好 if(!is_dir('upload1/')){
mkdir('upload1/') or die('创建目录失败');
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
是不是不存在那个文件夹?
追问
不是,确实存在的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询