1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
| function insertReading($sensor, $location, $value1, $value2, $value3, $value4, $pm25, $pm10)
{
global $servername, $username, $password, $dbname;
// La connexion devrait être un paramètre de la fonction
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sensor = $conn->real_escape_string($sensor);
$location = $conn->real_escape_string($location);
$value1 = $conn->real_escape_string($value1);
$value2 = $conn->real_escape_string($value2);
$value3 = $conn->real_escape_string($value3);
$value4 = $conn->real_escape_string($value4);
$pm25 = $conn->real_escape_string($pm25);
$pm10 = $conn->real_escape_string($pm10);
// Syntaxe INSERT/SET, propriétaire MySQL mais tellement plus lisible...
// Je te mets du NULL partout si chaîne de valeur vide, à adapter
$sql = <<<SQL
INSERT INTO SensorData
SET
sensor = '{$sensor}',
location '{$location}',
value1 = NULLIF('{$value1}, ''),
value2 = NULLIF('{$value2}, ''),
value3 = NULLIF('{$value3}, ''),
value4 = NuLLIF('{$value4}, ''),
pm25 = NULLIF('{$pm25}', ''),
pm10 = NULLIF('{$pm10}', '')
SQL;
if ($conn->query($sql) !== TRUE) {
return "INSERT failed";
}
return "New record created successfully";
} |