2016-07-30 128 views
-4

我試圖通過讓ajax調用一個php腳本來保存來自javascript的txt文件。回調是成功的,但是PHP沒有被執行。另外,在終端中運行php腳本將創建我的txt文件。所以不知怎的,這個調用並沒有被執行?我究竟做錯了什麼?php在ajax調用後不執行

的JavaScript:

var data = "test" 
$.ajax({ 
    url: 'http://localhost/saver.php', 
    type: 'POST', 
    data: { data: data }, 
    success: function(result) { 
     alert(result);}, 
    error: function(result) { 
     alert('ERROR');} 
     }); 

PHP腳本:

<?php 

$data = $_POST['data']; 
$fp = fopen('path/hs2.txt', 'w'); 
fwrite($fp, $data); 
fclose($fp); 

?> 
+0

你可以添加'console.log(result)'來檢查嗎? – FirstOne

+0

你能告訴我文件結構嗎?並且這兩個文件(具有ajax和最終php文件的文件)是哪裏? – Akshay

+1

@FirstOne:它顯示了php腳本 – Ansjovis86

回答

1

這是在fopen(...)的路徑問題。將其更改爲:

$fp = fopen('hs2.txt', 'w'); 

fopen()無法在不存在的文件夾中創建文件。您正嘗試在不存在的嵌套文件夾中創建文件。

+0

不,看起來不是問題 – Ansjovis86

+0

你測試過了,不起作用?對我來說,它工作正常。我不明白。 –

+0

@ Ansjovis86你說這些文件在同一個文件夾中,那麼爲什麼你使用''path/saver.php''? – j08691