2017-06-29 135 views
1

我想通過單擊按鈕刪除文件內容。我做了發送2個變量的ajax請求,其中發送刪除內容的人員的filenamenamePHP函數工作得很好,沒有錯誤,但它不能讀取ajaxrequest無法通過PHP讀取ajax請求

HTML

<button onclick="del()">Delete Chat</button> 

JavaScript的

<script> 
function del(){ 
    var del = new XMLHttpRequest(); 
    var url = "dc.php?f=" + "<?php echo $mf[0]."-".$mf[1].".txt" ?>"+"&n="+ "<?php echo $me ?>"; 
    del.send(); 
} 
</script> 

dc.php文件

<?php 
    $f = $_REQUEST['f']; 
    $n = $_REQUEST['n']; 
    $del=fopen($f,'w'); 
    fwrite($del, "Chat Deleted by ".$n."\n<br>"); 
    fclose($del); 
?> 
+1

您可以在「網絡」選項卡的開發人員工具中看到什麼?您可以在那裏跟蹤您的請求。 – Manwal

+0

@Manwal我得到'f'是'undefined index' –

+0

請求的實際結果URL是什麼?還要注意你正在嘗試做*兩個*請求。他們定義了不同的查詢字符串值。哪一個實際上被製造? – David

回答

1

試試這個:你不必調用不同的請求。將它們合併爲一個:

<script> 
    function del(){ 
     var del = new XMLHttpRequest(); 
     var url = "dc.php?f=" + "<?php echo $mf[0]."-".$mf[1].".txt" ?>"+"&n="+ "<?php echo $me ?>"; 
     url = encodeURIComponent(url); 
     del.open("GET", url , true); 
     del.send(); 
    } 
</script> 
+0

仍然,我得到'f是未定義索引',我沒有得到任何輸出 –

+1

他wouldn' t需要使用'encodeURIComponent'嗎? –

+0

@AdamForbis你是對的,值應該正確的URL編碼;但由於它們是使用PHP輸出的,所以使用PHP的'urlencode'可能會更有意義。但在任何情況下,請求'dc.php?f ='應該至少使'$ _REQUEST ['f']'存在並且不會拋出未定義的索引警告,無論在f = 0之後實際發生了什麼...... – CBroe