2017-06-29 12 views
1

ボタンのクリックでファイルの内容を削除します。私はajaxリクエストを作成して、2つの変数、つまりコンテンツを削除した人のfilenamenameを送信します。 PHP関数はエラーなく完全に正常に機能しますが、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は何ですか? * 2つの*リクエストを作成しようとしていることにも注意してください。そして、彼らは異なるクエリ文字列値を定義します。どちらが実際に作られていますか? – David

答えて

1

これを試してください:あなたは別の要求を呼び出す必要はありません。それらを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

He '彼は 'encodeURIComponent'を使う必要がありますか? –

+0

@AdamForbisあなたが正しいです、値は適切にURLエンコードされる必要があります。 PHPを使用して出力されるので、PHPの 'urlencode'を使用するとおそらくもう少し意味があります。しかし、どんな場合でも 'dc.php?f ='を要求すると、少なくとも$ _REQUEST ['f'] 'が存在し、f =の後で実際に何が来るにせよ、未定義のインデックス警告を投げないようにする必要があります。 – CBroe

関連する問題