0

SIM800L モジュールと Arduino Uno を使用して Web サーバーと通信しています。私はArduinoによって読み取られたセンサーを持っています。センサーの値をデータベースに保存したいと考えています。

私の Web サーバーには、データをデータベースに保存する PHP ページがあります。次のような GET メソッドを使用していますhttp://www.isj.ir/Samples/sample.php?sen1=27.2。SIM800L ではこのライブラリ
を 使用しています。

しかし、この例ではセンサーの値を渡すことができません。私は困惑している!どうすればよいか教えてください。

sprintf(body, "{\"name\": \"%s\"}", "Arduino");
result = http.post("isj.ir/Samples", body, response);
Serial.println(body);
print(F("HTTP POST: "), result);
if (result == SUCCESS) {
    Serial.println(response);
    StaticJsonBuffer<32> jsonBuffer;
    JsonObject& root = jsonBuffer.parseObject(response);
    lastRunTime = millis();
    waitForRunTime = root["waitForRunTime"];
    print(F("Last run time: "), lastRunTime);
    print(F("Next post in: "), waitForRunTime);
}

result = http.get("isj.ir/Samples", response);
print(F("HTTP GET: "), result);
if (result == SUCCESS) {
    Serial.println(response);
    StaticJsonBuffer<32> jsonBuffer;
    JsonObject& root = jsonBuffer.parseObject(response);
    lastRunTime = millis();
    waitForRunTime = root["waitForRunTime"];
    print(F("Last run time: "), lastRunTime);
    print(F("Next post in: "), waitForRunTime);
}
4

2 に答える 2

1

したがって、サーバー側では、このコードを使用してセンサー データを MySql データベースに保存します。

<?php
$servername = "localhost";
$username = "admin";
$password = "#admin#";
$dbname = "admin";


  $sen1 = $_GET['sen1'];
  $sen2 = $_GET['sen2'];
  $sen3 = $_GET['sen3'];
  $sen4 = $_GET['sen4'];
  $sen5 = $_GET['sen5'];
  $sen6 = $_GET['sen6'];
  $sdate = $_GET['sdatetime'];

// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
} 

$sql = "INSERT INTO SensorTable (sen1, sen2, sen3,sen4,sen5,sen6,sdatetime)
VALUES ('$sen1','$sen2','$sen3','$sen4','$sen5','$sen6','$sdate')";

if ($conn->query($sql) === TRUE) {
    echo "New record created successfully";
} else {
    echo "Error: " . $sql . "<br>" . $conn->error;
}

$conn->close();
?>

ブラウザーのアドレス バーで、このコードを使用してテーブルを埋めることができます。

isj.ir/Samples/sample.php?sen1=1&sen2=5&sen3=10&sen4=15&sen5=20&sen6=33&sdatetime=20171211

現在、SIM800L で送信する方法を探しています。(およびarduino UNO)。センサーの値を変更するにはどうすればよいですか? SIM800Lで送信するにはどうすればよいですか

isj.ir/Samples/sample.php?sen1=1&sen2=5&sen3=10&sen4=15&sen5=20&sen6=33&sdatetime=20171211

ありがとう。

于 2017-12-23T06:28:06.823 に答える