假设我有以下HTML文档进行某种简单的计算:
<html>
<script>
for (i=0;i<10;i++) {
var x = 2*i;
// send to PHP
};
</script>
</html>
现在假设我想通过将x值连续发送到单独的PHP文档(如下所示)将x值保存到文本文件中,该文档会将值附加到文本文件中,然后返回到HTML,在循环中进行下一次计算。
<?php
$my_file = 'results.txt';
$handle = fopen($my_file, 'a') or die('Cannot open file: '.$my_file);
fwrite($handle,$_POST["x"]."\n");
fclose($handle);
// go back to HTML document, BUT pick up from i+1 (i.e., don't start over from i=0)
?>
有人知道这是否可行?如果是这样,我应该在那些注释行中写什么?对我来说很重要的是我实际上坚持使用这个方法来获取下一个i值的HTML文档(而不是在一个PHP文件中进行整个计算),因为这只是一个概念证明。
答案 0 :(得分:0)
您想使用JQuery Ajax。但是,最好先将所有x值放入数组中,然后再发送数组。 html / jQuery看起来像这样:
<script type="text/javascript">
$(document).ready(function(){
//intiialize array
var myArray = [];
for(i = 0; i < 10; ++i){
myArray.push(i); // uses push() method to insert each number to array
};
$.post("yourFile.php",
{TheArray: myArray}, // notice how the array is posted
function(response){
alert(response); //simply alerts the response
});
});
</script>
PHP就是这样:
<?php
$data = array();
$data = $_REQUEST['TheArray']; // could use post, but request works too
var_dump($data); //cannot echo an array, only strings
?>