2016-09-05 16 views
1

フォームに問題があります。これには、画像をアップロードするための入力タイプのFileと、この画像を配置する場所を選択するための選択タグが含まれています。 コードは次のようになります:私はフォームを送信するとき、私はいつもにもif($_POST)のために偽の取得、およびてる

<?php 
require_once("functions.php"); 
if(isset($_COOKIE['user'])) 
    { 
    $username= checkcookie($_COOKIE['user']); 
    } 
    if (isset($_SESSION['user'])) { 
if ($_POST) { 

    $errors = array(); 
    $errors = SomeValidation(); 

    if (empty($errors)) { 
     UpdateImages(); 
     exit; 
    }else { 
     Header ("location: somefile.php?error=There was an error"); 
     exit; 
    } 
}else{ 
    var_dump("error"); 
} ?> 

<!DOCTYPE html> 
<html lang="en"> 
    <head> 
    </head> 

    <body> 
     <form method="post" action="" enctype="multipart/form-data"> 

      <?php if(isset($_GET['error'])) {?> 
      <div class="alert alert-danger" role="alert"> 
       <ul> 
        <li><?php echo $_GET['error'] ?></li> 
       </ul> 
      </div> 
     <?php } ?> 

       <div class="cbp-mc-column"> 

       <label>Choose new Image</label> 

       <select id="code" name="code"> 
        <option value="1" >First</option> 
        <option value="2" >Second</option> 
        <option value="3" >Third</option> 
       </select> 
       <br/> 
       <input type="file" name="newimage" value="" /> 
       <br> 
       <input type="submit" name="update" value="Update"> 
       <br> 
       </div> 

      </form> 

     <!-- Bootstrap Core JavaScript --> 
     <script src="../js/bootstrap.min.js"></script> 
    </body> 
</html> 
<?php }else 
{ 
    header('location: panel.php'); 
} 
?> 

。 理由は何ですか?

編集:私は言及を忘れた、私はselect値を投稿経由で送信するので、私はどのファイルのアップロードを選択することができ、それは常に空です。

+0

あなたがこれをしないのはなぜ、 '場合(ISSET($ _ POST [ '更新'])){...'? –

+0

$ _POSTは完全に空ですか? print_r($ _ POST)は何を与えるのですか? –

答えて

0

それはあなたが$ _FILES配列は投稿しない確認する必要があるイメージや他のファイルをアップロードする

if (!empty($_POST["update"])) { 
    .... 
} 
0

まず、あなたが提出ボタンがクリックされたかどうかを確認する必要があります。isset($_POST['update'])

次に、ファイルが選択されているかどうかを確認:isset($_FILES['newimage']['tmp_name'])

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

    if (isset($_FILES['newimage']['tmp_name'])) { 

     $errors = array(); 
     $errors = SomeValidation(); 

     if (empty($errors)) { 
      UpdateImages(); 
      exit; 
     } else { 
      Header ("location: somefile.php?error=There was an error"); 
      exit; 
     } 
    } else { 
     echo "No file selected."; 
    } 

} else { 

    echo "Not a POST request."; 
} 
+0

私はまだ間違っています。私はceroからコードを開始しようとしています。 –

関連する問題