【问题标题】:Any way to see php POST data from external sources?有什么方法可以从外部来源查看 php POST 数据?
【发布时间】:2017-01-09 19:47:20
【问题描述】:

好的……这就是交易。我一直在试验 RFID 技术。长话短说,RFID 阅读器可以将从标签读取的数据作为数据流发送到 HTML 页面。因此,数据作为 POST 数据发送。假设我有一个名为 datastream.php 的页面,它获取发布数据并将数据写入 MySQL 数据库,仅此而已。

有没有办法创建一个单独的页面(data-monitor.php)来实时(或接近)显示从 RFID 阅读器发送到 datastream.php 页面的 POST 数据?也许是 AJAX?抱歉,没有代码示例。这是一个更高层次的问题,看看是否会起作用。我有一种感觉,我可能只是让 data-monitor.php 页面更新一个 div 或其他内容,其中包含 MySQL 表中的数据,因为它是使用 AJAX 编写的。

【问题讨论】:

  • 浏览器 > 网络部分可以显示您发布的数据。
  • 是的。有办法。
  • 我能想到的唯一方法是,让 datastream.php 也写一个日志文件,并且 data-monitor.php 每隔 X 秒刷新一次,显示最后几个条目,同样它可以获取最后 X从数据库表中插入行

标签: php mysql ajax rfid


【解决方案1】:

我猜有2种方法,第一种是创建一个php页面并使用$_POST['input name']然后echo这些值,或者可能将它们保存在数据库中!。

或使用浏览器查看 POST 数据,当我有 AJAX 代码并想知道它是否确实将值传递到目标页面时,我会使用它。现在你怎么能做到这一点?

首先,这是我用来向另一个 php 代码提交的 AJAX 代码:

<script>
    function usersignup()
    {
      var username = document.getElementById("username").value;
      var email = document.getElementById("email").value;
      var password = document.getElementById("password").value;
      var r_password = document.getElementById("r_password").value;
      var gender = document.getElementById("gender").value;



      if(r_password != password)
        {
            document.getElementById('notmatchpass').style.display ='block';
        }

        else
        {

      if(username && email && password && gender)
      {
        $.ajax
        ({
          type: 'post',
          url: 'lib/signup.php',
          data: 
          {
             newuser:username,
             user_email:email,
             user_password:password,
             user_gender:gender
          },
          success: function (response) 
          {
            document.getElementById("respond").innerHTML=response+document.getElementById("respond").innerHTML;
            document.getElementById("signupform").innerHTML="";

          }, 
                error: function(response) {
                console.log(response);
            }
        });
      }
      }
      return false;
    }
</script>

这是用来激活控制台(浏览器控制台)的部分

error: function(response) {
console.log(response);}

现在只是为了测试它是否工作,在我提交表单之前,我会这样做:

  • 在浏览器上点击F12
  • 从工具栏选择(网络)

  • 现在我将提交表单
  • 之后我会选择帕尔马斯

  • 现在我们要看到的是发送的数据

对我来说,正如我所说,除了测试之外,我没有找到其他任何东西可以使用它。但其他开发人员肯定需要它。

【讨论】:

    【解决方案2】:

    您可以添加另一个页面,即tables.php,您将在其中仅显示 MySQL 数据库中的表

    在您的data-monitor.php 中,您可能有这样的代码,它从tables.php 加载数据并每秒刷新页面tables.php

    <script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
    <script language="javascript" type="text/javascript">
    var timeout = setInterval(reloaddata, 1000);    
    function reloaddata () {
         $('#incomingdata').load('tables.php');
    }
    </script>
    
    <div id="incomingdata">
    <!--This div will display data from tables.php and it will refresh every second-->
    </div>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-08-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-07-31
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多