php上传图片问题
- 提问者网友:记得曾经
- 2021-05-02 09:21
$u_name=$_POST["name"];
$u_context=$_POST["context"];
if($u_name=="" or $u_context=="" )
{
echo"请输入名字和内容 <a href=广告0.html>返回</a> " ;
exit;
}
$rand1=rand(0,9);
$rand2=rand(0,9);
$rand3=rand(0,9);
$filename=date("Ymdhms").$rand1.$rand2.$rand3;
$old=$_FILES['pic_name']['name'];
$filetype=substr($old,strrpos($old,"."),strlen($old) - strrpos($old,"."));
$filename=$filename.$filetype;
$savedir=$filename;
if(move_uploaded_file($_FILES['pic_name']['tmp_name'],$savedir )){
$file_name=basename($savedir);
}else{
echo"无法将附件写入服务器<a href= 用户0.html>返回</a>";
exit;
}
$id=mysql_connect("localhost","root","root");
mysql_select_db("login",$id);
$query="insert into u_gg(name,context,pic_name)values('$u_name','$u_context','file_name')";
mysql_query($query,$id);
?>
上传时候发生"无法将附件写入服务器",请问怎么会这样的?代码哪里错误了吗?>??
- 五星知识达人网友:等灯
- 2021-05-02 10:54
- 1楼网友:不想翻身的咸鱼
- 2021-05-02 12:57
文件上传路径问题,仔细检查下目录是否存在 如果服务器是linux的,检查下目录是否有写的权限
- 2楼网友:一叶十三刺
- 2021-05-02 11:32
<!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=gb2312" /> <title>无标题文档</title> </head> <link rel="stylesheet" type="text/css" href="skin/css/base.css"> <body> <?php if($_GET['action']==2) {
if ((($_FILES["file"]["type"] == "image/gif")|| ($_FILES["file"]["type"] == "image/jpeg")|| ($_FILES["file"]["type"] == "image/pjpeg"))&& ($_FILES["file"]["size"] < 20971520)) { if ($_FILES["file"]["error"] > 0) { echo "错误: " . $_FILES["file"]["error"] . "<br />"; } else { if (file_exists("upload/" . $_FILES["file"]["name"])) { echo "<script>alert('".$_FILES["file"]["name"] . " 已经存在!')</script> "; } else { move_uploaded_file($_FILES["file"]["tmp_name"],"upload/" . $_FILES["file"]["name"]); include_once("conn.php"); include_once("comm.php"); $picpath="upload/" . $_FILES["file"]["name"]; $ptime=date("y-m-d h:i:s",time()); $insql=insert("pics","p_path,p_time","'$picpath','$ptime'"); //echo $insql; if(mysql_query($insql)) { echo "<script>alert('上传成功!')</script>"; } else { echo "<script>alert('上传失败!')</script>"; }
} } } else { echo "<script>alert('无效的图片格式或者超出最大限制大小!');</script>"; } } ?> <table width="98%" align="center" border="0" cellpadding="3" cellspacing="1" bgcolor="#CBD8AC" > <tr> <td background="skin/images/frame/wbg.gif" bgcolor="#EEF4EA" class='title'>上传图片</td> </tr> <tr bgcolor="#FFFFFF"> <td><table width="80%" border="0" align="center" cellpadding="0" cellspacing="0"> <tr> <td><form action="?action=2" method="post" enctype="multipart/form-data"> <label for="file"><br /> 文件名:</label> <input type="file" name="file" id="file" /> <input type="submit" name="submit" value="上传图片" /> <span >(只能上传jpg或者gif格式的图片,且大小不能大于20兆)</span> </form></td> </tr> </table> <br /></td> </tr> </table> </body> </html>
今天才整的上传图片的代码,嘿嘿,绝对管用,但是你要在这个文件所在的目录建一个upload文件夹。
我这个是把路径保存在数据库了,你可以根据自己的需要来删减些。