php
  • loops
  • oop
  • if-statement
  • 2016-09-21 122 views 1 likes 
    1

    我正在練習php。所以今天我試圖通過驗證來完成圖片上傳。我在驗證中遇到了一些問題。這裏是我的代碼if else語句錯誤

    <?php 
         if(($_SERVER['REQUEST_METHOD'] == 'POST') && isset($_POST['upload_btn'])){ 
          if(empty($_POST['up_image'])){ 
          echo "<p class='bg-danger'>Upload Your Image...!!!</p>"; 
          } else{ 
           $permitted = array('jpg','jpeg','png','gif'); 
           $file_name = $_FILES['up_image']['name']; 
           $file_size = $_FILES['up_image']['size']; 
           $file_temp = $_FILES['up_image']['tmp_name']; 
    
           $div = explode('.', $file_name); 
           $file_ext = strtolower(end($div)); 
           $unique_name = substr(md5(time()), 0,10).'.'.$file_ext; 
           $uploaded_image = 'img/'.$unique_name; 
    
           move_uploaded_file($file_temp, $uploaded_image); 
           $insert_img = $user->insert_image($uploaded_image); 
           if(isset($insert_img)){ 
           echo "<p class='bg-success'>Image Inserted Successfully...</p>"; 
        } 
    } } ?> 
    

    當我上傳圖片其返回上傳你的圖片... !!!當空時這是好的。但是當我插入圖像時它也會顯示。我嘗試刪除空的驗證,然後我可以成功上傳圖像。在這種情況下做什麼?請幫幫我。

    在此先感謝。

    +0

    變化條件爲'if(空($ _ FILES ['up_image'])){' – jitendrapurohit

    +0

    @jitendrapurohit這不起作用。如果我發送空字段,然後上傳。 –

    回答

    0

    if/else聲明,如果應該做的伎倆

    if(($_SERVER['REQUEST_METHOD'] == 'POST') && isset($_POST['upload_btn'])){ 
        if(empty($_FILES['up_image']['name'])) { 
         echo "empty"; 
        } else { 
         echo $_FILES['up_image']['name']; 
        } 
    } 
    
    1

    您將始終回顯「上傳您的圖片... !!」因爲你正在檢查

    $_POST['up_image'] 
    

    代替

    $_FILES['up_image'] 
    

    此頁面,你應該表現出與形式上傳工作的幾個很好的例子 http://www.w3schools.com/php/php_file_upload.asp

    要檢查是否已經上傳的文件:

    $check = getimagesize($_FILES["up_image"]["tmp_name"]); 
    
    if($check !== false){ then it has passed... } 
    
    +0

    這不起作用。如果我發送空字段,然後上傳。 –

    +0

    我更新了我的帖子,閱讀我發給你的鏈接 – virepo

    1

    嘗試類似if(!isset($_FILES['up_image'])){

    +0

    它不能正常工作。當我發送空的領域它不顯示上傳你的形象!它直接上傳而不發送任何東西。 –

    1

    無論何時上傳任何文件,您的文件詳細信息數組都不在$ _POST變量中。使用$ _FILES而不是$ _POST。

    ,正如你在代碼$ _ POST書面[ 'up_image'],具有以下 $ _FILES [ 'up_images']替換此

    相關問題