Иногда мой NODEMCU arduino подключается к базе данных и сохраняет данные. В других случаях он не сможет подключиться.
1. Почему это?
2. Как я могу улучшить связь?
Мой проект: подключил GPS к узлу arduino mcu, получил данные о местоположении и сохранил их в онлайн-базе данных для последующего использования с картами.
Код PHP:
<?php
//require("config.php");
$dbHost = "localhost";
$dbUsername = "root";
$dbPassword = '';
$dbName = "map1";
// Opens a connection to a MySQL server
$connection = mysqli_connect($dbHost, $dbUsername, $dbPassword, $dbName);
if (!$connection) {
die('Not connected : Ah shit ' . mysqli_error());
}
//Set the active MySQL database
$db_selected = mysqli_select_db($connection, $dbName );
if (!$db_selected) {
die ('Can\'t use db : ' . mysqli_error());
}
//$request = $_GET['request'];
//$sql = "INSTERT INTO request.request (request)
//VALUES ('$request', '$request', '$request', '$request', '$request')";
$latitude = $_GET['latitude'];
$longitude = $_GET['longitude'];
//TEST to see if values received.
//$file = "testfile.txt";
//file_put_contents($file,$latitude . "\n");
//file_put_contents($file,$latitude);
$myfile = fopen('testfile.txt', 'a');
fwrite($myfile, "\r\n" . 'Latitude = ' . $latitude . "\r\n");
fwrite($myfile, 'Longitude = ' . $longitude . "\r\n" );
fclose($myfile);
//Delete old GPS location
//$sql = "DELETE FROM markers WHERE type='GPS'";
//Checks to see if row deleted
//if (mysqli_query($connection, $sql)) {
// echo "GPS record cleared";
//} else {
// echo "Error: Cant clear record! " . $sql . "<br>" . mysqli_error($connection);
//}
//INSERT into SQL database
$sql = "INSERT INTO markers (name, address, lat, lng, type)
VALUES ('GPS', 'GPS','".$_GET["latitude"]."','".$_GET["longitude"]."', 'GPS')";
// VALUES ('GPSname', 'GPSaddress','$latitude','$longitude', 'GPStype')";
//Checks to see if new record made
if (mysqli_query($connection, $sql)) {
echo "\nGPS record created";
} else {
echo "Error: " . $sql . "<br>" . mysqli_error($connection);
}
mysqli_close($connection);
?>
Задача ещё не решена.
Других решений пока нет …