[英]php ajax javascript/ecmascript html write to text file
我對上述技術沒有過多的經驗,但是需要解決我在使用POST功能時遇到的問題。
<!DOCTYPE html>
<html>
<head>
<title>ajax</title>
<meta charset='UTF-8'>
<script src='lib/ajaxget.js'></script>
<script src='lib/ajaxput.js'></script>
</head>
<body>
<h1>blah</h1>
<div>AJAX uploads go here.</div>
<div id="grabphpdiv"> AJAX uploads from PHP go here.</div>
<br>
<textarea id="comment" rows="5" cols="40"></textarea>
<br>
<button id="put">put</button>
<br>
<br>
<button id="get">get</button>
<script src='dyn.js'></script>
</body>
</html>
JS的“ GET”功能正在運行,因此這是不起作用的POST(控制台中沒有錯誤),但是文本文件並未更新...
function AjaxPut(URL, callback)
{ var ajaxObj = new XMLHttpRequest();
ajaxObj.open("POST", URL, true);
ajaxObj.onreadystatechange = function()
{ if (ajaxObj.status == 200)
if (ajaxObj.readyState == 4)
callback(ajaxObj.responseText);
};
ajaxObj.send("somestuff");
};
還有該帖子的PHP(盡管此處標題為PUT)
<?php
$jothandle = fopen("jots.txt","w");
fwrite($jothandle,$_REQUEST['line']);
最后,這是位於HTML底部的名為“ dyn.js”的JavaScript。 (盡管為了簡潔起見,我只粘貼了POST部分。
var y = document.getElementById("put");
y.addEventListener("click", runapi1);
y.addEventListener("click", grabphp1);
function runapi1()
{ AjaxPut('api/put.php', grabphp1);}
function grabphp1(response)
{ document.getElementById('grabphpdiv').innerHTML = response; }
任何幫助或指針將是非常非常感謝! 謝謝!
看來您沒有從JS發送一個名為line
的參數,但是您期望PHP代碼中有一個參數。 嘗試發送此代替: line=somestuff
例如
ajaxObj.send("line=somestuff");
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.