Php 我如何在Arduino中使用GET请求,以及为什么使用isn';它不起作用吗?

Php 我如何在Arduino中使用GET请求,以及为什么使用isn';它不起作用吗?,php,mysql,get,arduino,Php,Mysql,Get,Arduino,我有一个使用GET请求的Arduino代码(函数)。请求已成功发送,但我没有在串行监视器上打印所需的页面 我的目标是从我的服务器(MySQL)获取一个值,并将其用于我的运动函数(比如使用ThingSpeak API)。但我无法接收数据。请帮忙 Arduino代码: void getd() { esp.println("AT+CIPMUX=0"); esp.println("AT+CIPSTART=\"TCP\",\""+server+"\",80"); //start a TCP c

我有一个使用GET请求的Arduino代码(函数)。请求已成功发送,但我没有在串行监视器上打印所需的页面

我的目标是从我的服务器(MySQL)获取一个值,并将其用于我的运动函数(比如使用ThingSpeak API)。但我无法接收数据。请帮忙

Arduino代码:

void getd() {
  esp.println("AT+CIPMUX=0");
  esp.println("AT+CIPSTART=\"TCP\",\""+server+"\",80");
  //start a TCP connection.
  if( esp.find("OK")) {
    Serial.println("TCP connection ready");
    delay(1000);
  }
  delay(1000);
  Req ="GET " + a +" ?val= \r\n\r\n";
  int l=Req.length();
  Serial.println(l+2);
  esp.print("AT+CIPSEND=");
  esp.println(Req.length());
  if(esp.find(">")) {
    Serial.println("Sending..");
    Serial.print(Req);
    esp.print(Req);
    if(esp.find("SEND OK")) {
      Serial.println("Packe");
      // if there are incoming bytes available
      // from the server, read them and print them:
      if (esp.available()) {
        String c = String(esp.read());
        Serial.println(c);  // to see the value
        // atoi is a function to convert ascii to integer
      }
    }
PHP代码:

<?php
$sql= new mysqli('localhost','root', '', 'farminger');
if($sql->connect_error) {
  die("connection failed:". $sql->connect_error);
}
$query1= $sql->query("select * from test order by timestamp desc limit 1" ); #insert in table
if($query1!==FALSE) {
  while($row = mysqli_fetch_array($query1)) {
    echo "val: " . $row["val"]. "<br>";
  }
  mysqli_free_result($query1);
}
$_POST['val']=$row["val"];
mysqli_close($sql);
?>


我在PHP部分是否犯了一些逻辑错误?我应该在那里使用POST请求吗?

检查查询中的错误是否有任何来自它的信息?TBH,我不知道Arduino,所以我帮不了你。使用错误报告这是你的代码的精确副本吗?似乎有一些
}
missing@Jeff如果你说的是arduino密码;他们没有正确缩进;我编辑了。
+”?val=\r\n\r\n“
这里的空间可能是可以查看的。也许它应该读为
+“?val=\r\n\r\n”
。但是
是一种GET方法,因此您可能希望将
$\u POST['val']
更改为
$\u GET['val']
,我很有信心它会解决这个问题。@Fred ii-是的,在arduino代码中缺少两个