2017-12-24 12 views
-1

私はUbuntuにいます。私は小さな画像のユーザーファイルのアップロードを取ろうとしています。 $ _FILESがデータで満たされていることを確認しました。私は、移動コマンドをデバッグしようとしましたが、何もエコーしません。PHP FileUploadが動作していません

if ($_SERVER['REQUEST_METHOD'] == 'POST'){ 
    //Now handle everything 
    if(isset($_POST["submit"])) { 
     print_r($_FILES); 
     //Store the image 
     if(!empty($_FILES['uploaded_file'])) 
     { 
      $path = "/neel/public/img/"; 
      $path = $path.basename($_FILES['uploaded_file']['name']); 
      if(move_uploaded_file($_FILES['uploaded_file']['tmp_name'], $path)) { 

      echo 'Its working'; 
      } else{ 
       echo 'I am done!!!'; 
       die(); 
      } 
     } 
    createnewEvent($conn); 
    header('Location:/neel/index.php'); 
    } 
} 
+1

あなたは、Uを表示することができます■<フォームページ? – halojoy

+0

+0

これは/neel/admin.phpです。出力はありますか? – halojoy

答えて

1

ファイルが存在するかどうかを確認することができます。

if(!empty($_FILES['file']['name'])) 

ここで、fileは、ファイルの入力フィールドの名前です。

+0

が)それは –

0

$ _SERVER ['REQUEST_METHOD']が「POST」でない場合、表示されているスクリプトは「何もエコーしません」だけです。イベントの記述が正確であると仮定すると、問題は@halojoyがここに表示するように要求している形式になります。

スクリプトを自分自身にリダイレクトしないことを願っています。また、エコー後にリダイレクトを試みてはいけません。

+0

<フォームにenctype = "multipart/form-データ" アクション= "/ネール/ admin.php" メソッド= "ポスト"> –

+0

1を助けなかったなかったことは、フォームの一部だけです。 2)あなたが私たちに示したコードは、(コアダンプでクラッシュしていない限り)あなたが記述した方法では動作しません。問題を説明できない場合、私たちはお手伝いできません。 – symcbean

0

上記のGは正しいです。
あなたはこのチェックする必要があります代わりにチェックの
、$ _POST場合は[ '提出']:それはPHPとの完全なサインアップフォームのこのコードを試してみてください
if(isset($_FILES['uploaded_file']['name']))

0

を、ブートストラップ

HTML

<div class="container"> 
    <div class="row"> 
     <br> 
      <h1 class="text-center">Create new account</h1> 
      <br> 
     <div class="col-lg-4 col-md-6 col-sm-12"> 
      <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST" enctype="multipart/form-data"> 
       <div class="form-group"> 
        <input type="text" class="form-control form-control-lg" name="name" placeholder="Your Name"> 
       </div> 
       <div class="form-group"> 
        <input type="text" class="form-control form-control-lg" name="username" placeholder="Username"> 
       </div> 
       <div class="form-group"> 
        <input type="password" class="form-control form-control-lg" name="password" placeholder="Password"> 
       </div> 
       <div class="form-group text-center"> 
        <div class='file-input'> 
         <input type='file' name="profile-img"> 
         <span class='button label' data-js-label>Choose your profile image</span> 
        </div> 
       </div> 
       <div class="form-group"> 
        <input type="submit" class="btn btn-success form-control form-control-lg" name="signup" value="Signup"> 
       </div> 
      </form> 
     </div> 
    </div> 
</div> 

PHP

if ($_SERVER['REQUEST_METHOD'] == 'POST') { 
    $errors; 
    if (empty($_POST['name'])) { 
     $errors[] = "Name field is empty"; 
    } 
    if (empty($_POST['username'])) { 
     $errors[] = "Username field is empty"; 
    } 
    if (empty($_POST['password'])) { 
     $errors[] = "Password field is empty"; 
    } 
    if (empty($_FILES['profile-img'])) { 
     $errors[] = "You should upload profile image"; 
    } else{ 
     $img = $_FILES['profile-img']; 
     $ext = end(explode('.', $img['name'])); 
     $allowed_extensions = array('jpg', 'jpeg', 'png', 'gif'); 
     $max_size = 4; //MegaBytes 
     if (! in_array($ext, $allowed_extensions)) { 
      $errors[] = "Please , Choose a valid image"; 
     } 
     $img_size = $img['size']/1000000; // By Megabyte 
     if ($img_size > $max_size) { 
      $errors[] = "This picture is so large"; 
     } 
    } 
    if (!empty($errors)) { 
     echo '<div class="container">'; 
     foreach ($errors as $error) { 
      echo ' 
       <div class="alert alert-danger" role="alert"> 
       ' . $error . ' 
       </div> 
      '; 
     } 
     echo "</div>"; 
    } else { 
     $username = filter_var(htmlentities(trim($_POST['username'])), FILTER_SANITIZE_STRING); 
     $name = filter_var(htmlentities(trim($_POST['name'])), FILTER_SANITIZE_STRING); 
     $password = sha1(filter_var(htmlentities(trim($_POST['password'])), FILTER_SANITIZE_STRING)); 
     // Profile Picture :- 
     $imgname = uniqid(uniqid()) . @date("Y-m-d") . "." . $ext; 

     $target_bath = "uploads/imgs/"; 
     $target_bath = $target_bath . basename($imgname); 
     $orginal_img = $img['tmp_name']; 

     if (move_uploaded_file($orginal_img, $target_bath)) { 
      $sql = "INSERT INTO users(name, username, password,profile_picture, r_d) VALUES ('$name', '$username', '$password', '$target_bath', NOW())"; 
      $result = mysqli_query($conn, $sql); 
      header('location: ./login.php'); 
     } 


    } 
} 
関連する問題