需要 PHP 将作为 GET 发送的数据保存到文件 web 发送

Posted

技术标签:

【中文标题】需要 PHP 将作为 GET 发送的数据保存到文件 web 发送【英文标题】:need PHP to save data sent as a GET to a file web send 【发布时间】:2017-03-30 02:17:10 【问题描述】:

我需要使用以下表格将单元 ID 从 Arduino 发送到网络:

      http://somdomain.com/path/phpscript.php?ID=5

arduino 代码是一个灌篮高手,但我需要 PHP 脚本的帮助以接受服务器端数据并将 ID 号仅保存到名为 id_file.txt 的文本文件以供以后解析。

    there are 20 units and i need 1 ID number/line 

我什至不了解文件的结构。

如果可能,请提供帮助。

【问题讨论】:

谢谢你让我工作 【参考方案1】:

让 Arduino 调用类似

的页面
http://somdomain.com/path/phpscript.php?ID=5

那么 phpscript.php 会是这个样子

    <?php
    //first line just checks to see if ID is set and if so it'll run the script. This stops the script from running if ID isn't set and someone just randomly comes to the webpage
    if (isset($_GET['ID'])) 

    $id = $_GET['ID'] . "\n"; //I added \n to denote a new line so when you write to this file it'll just append the ID's there
    $myfile = fopen("newfile.txt", "w") or die("Unable to open file!");
    fwrite($myfile, $id); //the second parameter is whatever you want to write to that file
    fclose($myfile);
    

如果您想在应该可以工作的同一个文件中写入新行

【讨论】:

我以两个答案的混合结束。虽然我不需要 echo 语句,但我需要将 fopen 从 write 更改为 append,它现在运行良好。谢谢大家【参考方案2】:

您可以使用以下代码写入文件。

$filename='myfilename.txt';
if(isset($_GET['ID']))
   $id= $_GET['ID'];
   if(is_numeric($id))
      if(file_put_contents($filename,$id,FILE_APPEND)!== FALSE)
          echo "id successfully saved";
      else
          echo "there is a error saving your id";
      
   

稍后您可以从文件中读取..

 $filearray = file($filename,FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
 foreach($filearray as $id)
  echo $id;// this print the id's
 

【讨论】:

以上是关于需要 PHP 将作为 GET 发送的数据保存到文件 web 发送的主要内容,如果未能解决你的问题,请参考以下文章

如何将 HighCharts 图像保存到 PHP 中的项目文件夹中?

发出 GET 请求并在 AJAX、php 中发送最后日期

如何使用ajax将输入文件数据值发送到php页面

如何从 PHP 发送 GET 请求?

关于PHP文件操作: php保存数据到文本文件,怎么弄?

通过 AJAX 从 localStorage 发送数据到 PHP 并保存在 HTML 文件中