PHP中文件上传功能,在windows平台下可以正常上传,但是部署到服务器上就无法上传

风尘孤子 发布于 2017/11/30 11:36
阅读 354
收藏 0

实现文件上传时,在Windows下正常上传,但是部署到linux下时就不能上传了,求解

<?php
function uploadfile(){
//设置字符集
//header("content-type:text/html;charset=utf-8");
//定义路径常量,文件夹B于文件夹A的相对路径为 ../把/,对上传文件进行move的时候写好路径就可以。
define("FILEPATH", "image/");
if($_FILES['msh']['error']=='UPLOAD_ERR_OK'){
if(is_uploaded_file($_FILES['msh']['tmp_name'])){
    if (file_exists(FILEPATH.$_FILES["msh"]["name"]))
      {
      echo $_FILES["msh"]["name"] . "文件已经存在";
      echo "<br>";
      echo "<a href='gridmain.html'>重新上传</a>";
      return false;
      }
      else{
    //echo "文件名:".$_FILES['classnotes']['name'];
    //将路径编码格式转化为gb2312为Windows支持格式以支持中文文件名。
    $filepath=iconv("utf-8","gb2312",FILEPATH);
//$result=move_uploaded_file($_FILES['classnotes']['tmp_name'],FILEPATH.$_FILES['classnotes']['name']);
$fileType=$_FILES['msh']['name'];
//echo "$fileType<br>";
$fileSlide=explode('.', $fileType);
$counter=count($fileSlide);
$fileFomat=$fileSlide[$counter-1];
//echo "$fileFomat<br>";
if($fileFomat=='msh'){
$result=move_uploaded_file($_FILES['msh']['tmp_name'],$filepath.$_FILES['msh']['name']);
//echo "$result";
//echo "类型是:".$_FILES['msh']['type'];
//var_dump($_FILES);
//$_FILES['classnotes']['error'];
echo "上传成功<br>";
echo "<a href='gridmain.html'>返回上传页面(待定)</a>";
 return true;
}
else{
    //echo "请输入MSH文件";
    echo "上传失败,请上传MSH文件<br>";
    echo "<a href='gridmain.html'>返回上传页面</a>";

    return false;
}    
}
}
else{
    echo "不能上传空文件<br>";
    echo "<a gridmain.html'>返回上传页面</a>";
    return  false;
}
}
}
?>

<?php
include ('lianjie.php');
include ('readFlie.php');
include ('upload.php');
include ('cellnumber.php');
$file="image/".$_FILES['msh']['name'];
if(uploadfile()){
$boundary=tail($file);
$thick=addslashes($_POST['gridThick']);
$fileName=$_FILES['msh']['name'];
$cellNumber=cellCal($file);
//echo "$cellNumber";
//echo "<br>";
$cellSize=addslashes($_POST['celSize']);
$dimension=$_POST['Dimension'];

if(!empty($_POST['celSize'])&&!empty($_POST['gridThick']))
{
    $sql="INSERT  INTO think_griddata(filename,boundary,pointnumber,calcuatesize,gridthick,dimension) VALUES ('$fileName','$boundary','$cellNumber','$cellSize','$thick','$dimension') ";
    mysqli_query($con,$sql);
}
}
/*$query="SELECT * FROM think_griddata";
$result=mysqli_query($con,$query);
while ($row=mysqli_fetch_array($result)) {
    # code...
    echo "<tr><td>{$row['编号']}</td></tr>";
}
*/
?>

加载中
0
花花世界欢乐多
风尘孤子
风尘孤子
上传目录就是在www文件夹下应该有权限吧
0
sinopf
sinopf

上传目录需要777权限,chmod($dir,0777);

风尘孤子
风尘孤子
是加在路径之后吗,代码中
0
c
coderjinhui
服务器的文件夹是不是没有写入权限
返回顶部
顶部