PHP图像上传代码在本地主机上工作,但不能在服务器上工作


PHP image upload code working on localhost but not working on server

<?php
$con=mysqli_connect("localhost","root","","namkaran");
if(isset($_FILES['files'])){
    $errors= array();
    foreach($_FILES['files']['tmp_name'] as $key => $tmp_name ){
    $file_name = $key.$_FILES['files']['name'][$key];
    $file_size =$_FILES['files']['size'][$key];
    $file_tmp =$_FILES['files']['tmp_name'][$key];
    $file_type=$_FILES['files']['type'][$key];  
    if($file_size > 2097152){
        $errors[]='File size must be less than 2 MB';
    }       
    $query="INSERT into upload_data (`FILE_NAME`,`FILE_SIZE`,`FILE_TYPE`)
    VALUES('$file_name','$file_size','$file_type'); ";
    $desired_dir="user_data";
    if(empty($errors)==true){
        if(is_dir($desired_dir)==false){
            mkdir("$desired_dir", 0700); // Create directory if it does not exist
        }
        if(is_dir("$desired_dir/".$file_name)==false){
            move_uploaded_file($file_tmp,"$desired_dir/".$file_name);
        }else{              // rename the file if another one exist
            $new_dir="$desired_dir/".$file_name.time();
             rename($file_tmp,$new_dir) ;               
        }
     mysql_query($query);           
    }else{
            print_r($errors);
    }
}
if (!mysqli_query($con,$query))
{
 die('Error: ' . mysqli_error());
  }
if(empty($error)){
    echo "Photos Uploaded Succesfully !!";
}
 }
 ?>

这是我的图像上传代码,它在本地主机上工作出色,但在服务器上上传时不工作。代码将上传的图像保存到名为user_data的文件夹中,如果该文件夹不存在,代码将自己创建该文件夹。然后将图像保存在文件夹中。在本地主机上,它自己创建了一个文件夹,开始将图像保存到文件夹中,但在线上它没有创建文件夹,当我手动创建文件夹时,它仍然没有将图像保存在文件夹中。代码没有给出任何错误消息,而是给出了成功消息。

  1. 确保您的数据库连接成功并且所有查询都是正确的正确的

  2. 确保你的脚本在服务器上有写权限

  3. 如果没有帮助,试着调试你的代码,找出出错的地方

相关文章: