
<?php
/**
* @param string $message
* @param PDOException|null $exception
*/
function writeMessage($message, $exception = null)
{
$logfile = '/var/www/html/data/arduino.log';
$datetime = date('d.m.Y H:i:s', time());
if ($exception !== null) {
$message .= ': ' . $exception->getFile() . ' (line: ' . $exception->getLine() . ') - ' . $exception->getMessage();
}
file_put_contents($logfile, '[' . $datetime . '] ' . $message."\n", FILE_APPEND);
}
/* Подключение к базе данных MySQL с помощью вызова драйвера */
$dsn = 'mysql:dbname=greenhouse;host=localhost';
$user = 'arduino';
$password = 'парол';
try {
$dbh = new PDO($dsn, $user, $password, [
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES utf8',
]);
} catch (PDOException $e) {
writeMessage('Произошла ошибка', $e);
}
try {
$sth = $dbh->prepare('INSERT INTO data (sensor, temperature, humidity, created_at) VALUES (?, ?, ?, NOW())');
$sth->execute(['grass', $_REQUEST['temp'], $_REQUEST['hum']]);
} catch (PDOException $e) {
writeMessage('Произошла ошибка', $e);
}
Let's block ads! (Why?)
Комментариев нет:
Отправить комментарий