2016-02-05 94 views
0

我想單擊更改我的file.txt。 例如,我寫了這個:如何永久更改外部file.txt?

HTML:

<script type="text/javascript" src="file.txt"></script> 

的jQuery:

var counter = config.rans; 
var counter1 = config.bans; 

$('.redanswer').one('click', function(){ 
    var xhr = new XMLHttpRequest(); 
    xhr.open('PUT','file.txt', true); 
    xhr.setRequestHeader('Content-Type','text/javascript; charset=utf-8'); 
    xhr.send('var config={"rans":' + ++counter + ',"bans":' + counter1 + '};'); 
    $('.rtotal').text(counter); 
    $('.btotal').text(counter1); 
}); 

$('.blueanswer').one('click', function(){ 
    var xhr = new XMLHttpRequest(); 
    xhr.open('PUT','file.txt', true); 
    xhr.setRequestHeader('Content-Type','text/javascript; charset=utf-8'); 
    xhr.send('var config={"rans":' + counter + ',"bans":' + ++counter1 + '};'); 
    $('.btotal').text(counter1); 
    $('.rtotal').text(counter); 
}); 

file.txt的:

var config={"rans":10,"bans":20}; 

使用此代碼點擊時,例如,redanswer它顯示數字11,因爲它是rans(10)+1。但是,如果我重新加載頁面,並且我再次單擊redanswer,它已顯示數字11,因爲文件.txt沒有被編輯。我想添加一段代碼,點擊redanswer,可以編輯像var config={"rans":11,"bans":20}; //10+1這樣的file.txt文件。

我希望你能理解。非常感謝你。

+0

PHP的文檔說:「Apache或PHP顯然不是一個好主意,可以讓所有人都自動覆蓋Web樹中的任何文件,因此,要處理這樣的請求,您必須先告訴Web服務器您想要某個特定的PHP腳本來處理請求。「參見[PUT方法支持](http://php.net/manual/en/features.file-upload.put-method.php)。 – showdev

+0

另外,根據[apacheweek.com](http://www.apacheweek.com/features/put)上的一篇文章,「Apache處理PUT就像處理POST方法一樣,也就是說,它支持它,但爲了讓它做任何有用的事情,你需要提供一個合適的CGI程序。「 – showdev

回答

0

不幸的是,這是不可能的。 JavaScript沒有讀/寫功能

我建議創建一個簡單的POST或GET PHP API來寫文件。