2017-12-21 27 views
0

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

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

しかし、この例ではセンサーの値を渡すことができません。私は困惑している!私を助けて、私は何をすべきか教えてくれませんか?

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); 
} 
+1

私は多くの情報を私たちに渡しませんでした。上記のコードを試したときに受け取ったものを指定してください。 – Billa

答えて

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 

ありがとう。

関連する問題