无法让$ _POST工作

时间:2017-09-24 16:07:40

标签: php post

我在服务器中有三个文件(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是让以下页面起作用之前的一步:

https://rbonphp.000webhostapp.com/DailyTasks1.php

2 个答案:

答案 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'
});