dongsui8162 2018-11-30 06:47
浏览 64

pics上传脚本不在实时服务器中工作但在localhost中工作

I have a website in which I am giving users the functionality to upload pics but it is showing an error that only jpg, jpeg, png type format is available this is my PHP code

<?php require "config.php";?>
<?php
 session_start();
 if($_SESSION['is_login']){
 $email = $_SESSION["email"];


}else{
  header("Location:dashboard.php");
}?>

<html>
    <head>

<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script>
<script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.0.13/css/all.css" integrity="sha384-DNOHZ68U8hZfKXOrtjWvjxusGo9WQnrNx2sqG0tfsghAvtVlRW3tvkXWZh58N9jp" crossorigin="anonymous">
<style type="text/css">
  .modal-backdrop.in {
    position: relative;
    opacity: .5;
}
.modal-title{
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
}
img{
  width: 100%
}
.btn{
  color: #87c5db;
  border-color: #87c5db;
 float: right;
}
.btn:hover{
  background-color: #87c5db;
  color: white;

}
</style>
    </head>
<body>
<?php
$query = "SELECT * FROM photos";
$fire = mysqli_query($con,$query) or die("can not fetch data from database ".mysqli_error($con));
if (mysqli_num_rows($fire)>0) {
  $users = mysqli_fetch_assoc($fire);
    $pic_id = $users['id'];
    }
  ?>
  <?php
$query = "SELECT * FROM users WHERE email='$email'or username =   
'$email'or mobile='$email'";
$fire = mysqli_query($con,$query) or die("can not fetch data from database ".mysqli_error($con));
if (mysqli_num_rows($fire)>0) {
  $row = mysqli_fetch_assoc($fire);
  $id = $row['id'];
  $email2 = $row['email'];
  $username = $row['username'];
  $avatarpath = $row['avatar_path'];



if (isset($_POST['uploadpic'])) {

  $avatar = $_FILES['avatar'];
   $avatar_name = $_FILES['avatar']['name'];
   $avatar_tmpname = $_FILES['avatar']['tmp_name'];
   $avatar_size =  $_FILES['avatar']['size'];
   $avatar_type = $_FILES['avatar']['type'];
   $avatar_ext = pathinfo($avatar_name, PATHINFO_EXTENSION);

   if (!empty($avatar_name)) {
    if ($avatar_size <= 25000000) {
      if ($avatar_ext == "jpg" || $avatar_ext == "jpeg" || $avatar_ext == "gif"  ||$avatar_ext == "png" ) {
        $chars= "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
        $rand_dir_name=substr(str_shuffle($chars),0,15);
        mkdir("userdata/user_photos/$rand_dir_name");
         $final_file= "userdata/user_photos/$rand_dir_name/$avatar_name";


   $upload = move_uploaded_file($avatar_tmpname, $final_file);
   if ($upload) {
     $msg = "file uploaded successfully ";
     $query = "INSERT INTO photos(uid,image_url,email,date_posted,username,avatar_path,time2) VALUES ('$id','userdata/user_photos/$rand_dir_name/$avatar_name','$email2',NOW(),'$username','$avatarpath',NOW())";
     $fire = mysqli_query($con,$query) or die("can not insert file path into database".mysqli_error($con));

     if ($fire) {
       $msg .=" and also inserted into database";
      header("Location:filters.php");
     }



        # code...
      }else{ echo "only jpg,jpeg,png, type format allowed";}
    }else{echo "file size is too large";}

   }else{echo "please select an image to upload";}


}  
  }

}

?>




<div class="container">
  <!-- Trigger the modal with a button -->
  <!-- Modal -->
  <div class="modal show" id="myModal" role="dialog">
    <div class="modal-dialog">

      <!-- Modal content-->
      <div class="modal-content">
        <div class="modal-header">
          <button onclick="javascript:location.href='dashboard.php'"  type="button" class="close" data-dismiss="modal">&times;</button>
          <h4 class="modal-title">Upload your pic </h4>
        </div>
        <div class="modal-body">
          <img src="images/gallery.png">
            <form action="#" method="POST" enctype="multipart/form-data">
      <input type="file" class="form-control" name="avatar" >

      <button type="submit" class="btn btn-default" name="uploadpic" > upload</button>
<button type="button" onclick="javascript:location.href='dashboard.php'" class="btn btn-default" data-dismiss="modal" >Cancel</button>
    </form>
        </div>
        <div class="modal-footer">

        </div>
      </div>

    </div>
  </div>

</div>
    </body>
</html>

and I am choosing the pics only in png, jpeg or jpg format but I don't know why it I showing this error and I tried removing this if statement that includes extension type but still the script is not working in live server although it is working in localhost

  • 写回答

1条回答 默认 最新

  • dongsigan2044 2018-11-30 08:04
    关注

    i got the answer actually i didnt had a folder named user_photos in my userdata folder but i defined it in my code now i made a folder name userdata it is solved now thanx for your help

    评论

报告相同问题?

悬赏问题

  • ¥100 支付宝网页转账系统不识别账号
  • ¥15 基于单片机的靶位控制系统
  • ¥15 AT89C51控制8位八段数码管显示时钟。
  • ¥15 真我手机蓝牙传输进度消息被关闭了,怎么打开?(关键词-消息通知)
  • ¥15 下图接收小电路,谁知道原理
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度
  • ¥30 关于#r语言#的问题:如何对R语言中mfgarch包中构建的garch-midas模型进行样本内长期波动率预测和样本外长期波动率预测
  • ¥15 ETLCloud 处理json多层级问题