我在服务器中有三个文件(000webhost.com):
“ Test01.php ”(主文件),
“ database.txt ”(已保存的数据,将由用户更改),
“ save_txt.php ”(从主文件获取数据并将其写入“数据库”的文件。
“ Test01.php ”应该显示一个简单的列表,表格中有几个名称(单列,多行)。
这些名称将从名为“ database.txt ”的文件中检索
每次有用户点击名称时,该名称将被发送到列表的底部,列表将保存到“ database.txt ”,因此下一个用户将看到所做的更改最后一个。
“ Test01.php ”中的函数会将更改的列表发送到第二个文件(“ save_txt.php ”),该文件应该将其写回“ database.txt ”。
我可以设法从txt文件中检索数据,以及点击事件,但我仍然找不到将数据保存到txt文件的方法...
事实上,我不明白为什么我的变量没有在第二个php文件中看到(“ save_txt.php ”)。
要检索我使用的数据:
<?php
$Data_from_File = file("database.txt",FILE_IGNORE_NEW_LINES);
?>
脚本:
var sSaved_Data = <?php echo json_encode($Data_from_File); ?>;
上市的东西很好。
我从txt文件中获取了许多名称并将其存储到数组中。然后我将它显示在表格中。阅读文件没问题。
我通过这样做将数据发送到“ save_txt.php ”:
var sNew_Data = " is blue";
.
.
.
xmlhttp.send("php_Data_to_Save=" + sNew_Data);
但是,有谁可以告诉我为什么下面的简单代码不起作用?
https://rbonphp.000webhostapp.com/Test01.php
“ save_txt.php ”就像这样:
<?php
$var1 = $_POST["php_Data_to_Save"];
echo $var1;
?>
及时:在此示例中,我只想在屏幕(无论在哪里)中看到“为蓝色”。我只是想了解如何将数据恢复为“ save_txt.php ”。
稍后我会尝试将 $ var1 写入“database.txt”。
但首先要做的事情是......
: - (
正如我所说,这个“ Test01.php ”只是一个测试。我在另一个文件中写的列表和所有点击事件。那部分工作正常。
*已编辑*
让我们试着把它全部放在几行中 主文件( Test01.php )执行:
var sNew_Data = " is blue";
// there's more code for the XMLHttpRequest function
xmlhttp.send("php_Data_to_Save=" + sNew_Data);
辅助文件( save_txt.php )执行:
<?php
$var1 = $_POST["php_Data_to_Save"];
echo $var1;
?> // and this is ALL its code, just these 4 lines.
该行 echo $ var1; 应该只是在屏幕上显示“为蓝色”。
右???
额外信息:Test01.php是让以下页面起作用之前的一步:
答案 0 :(得分:0)
首先,你没有在任何地方致电Send_Data_to_Server()
,你刚刚宣布了它。
secont,您只需将请求发送到服务器,但不要将答案存储在任何地方。
答案 1 :(得分:0)
您的代码 正在运作。
调用Send_Data_to_Server()
会返回“天空为蓝色”,这是您想要的,因为发送的数据为var sNew_Data = sSaved_Data + " is blue";
,并且 save_txt.php正确回显
注意:您注释的jquery ajax调用是错误的,这不是您定义发送数据的方式,请查看http://api.jquery.com/jquery.ajax/上的第一个示例
你写的是:
$.ajax({
url: 'save_txt.php',
data: { php_Data_to_Save : sNew_Data },
type: 'POST'
});