2017-11-18 11 views
0

AJAXを使用せずにファイルを削除しようとすると、正常に動作しますが、AJAXコードを使用すると何も起こりません。ここにAJAXのコードがあります。 のindex.php =>AJAX/phpを使用してファイルを削除できません

<form method="post" action="include/delete.php" id="del-form"> 
     <input type="text" name="file-name" class="file-name-manager" required /> 
     <button class='btn-nav-class1'><i class='fa fa-trash-o fa-2x' aria-hidden='true'></i></button> 
    </form> 

delete.php =>

<?php 
session_start(); 
include_once 'dbh.inc.php'; 
$sessionid = $_SESSION['u_id']; 
    $name = mysqli_real_escape_string($conn,$_POST['file-name']); 
    $file = "../files/".$sessionid.'/'.$name; 
    if(!unlink($file)){ 
     echo "File not deleted"; 
    } else { 
     echo "File deleted"; 
    } 
    header("Location: ../index.php?delete=success"); 

およびAJAXでの私は、私が欲しいのコード=>

$("#del-form").bind('submit',function(e){ 
      $.ajax({url: "include/delete.php", success: function(result){ 
       alert("done"); 
      } 
     }); 
      e.preventDefault(); 
      return false; 

を使用し、それはファイルを削除することですdelete.phpにリダイレクトせずに、index.phpにリダイレクトする必要があります。しかし、コードを使用すると、警告メッセージが表示され、ファイルは削除されません。

+0

あなたは 'file-name'を渡さないでください – Akintunde007

+0

ファイル名をどこに渡しますか? –

+0

私の答えを参照してください。 – Akintunde007

答えて

0
これにあなたのAJAX機能を変更

-

   var fileName = $("[name='file-name']").val(); 

       $.ajax({ 
        type: 'post', 
        url: 'include/delete.php', 
        data: { 
        'file-name': fileName 
        }, 
        success: function (response) { 
        //alert(response); 
        console.log(response); 
        } 
       }); 

とdelete.phpで、最後のヘッダの場所行を削除します。

+0

ありがとうございました!正確に私が必要としたもの(: –

関連する問題