Добрый день помогите с проблемой.
Нужно организовать так чтобы при получение post запроса имя базы соответствовала с переменной "hostname"
Пример устройство с именем esp1 передает данные на этот скрипт а скрипт выбирает базу соответствующую имени устройста то есть базу esp1 за место базы dubmon PHP:
скопировать код в буфер обмена
<?PHP define ("MYSQL_HOST" ,'localhost'); define ("MYSQL_LOGIN" ,'user'); define ("MYSQL_PASSWORD",'pass'); define ("MYSQL_DATABASE",'dubmon'); or die("Connect SQL error!"); $db_name = MYSQL_DATABASE; /** * Create Table Query by tableName * @param string $tableName Table name * @return string */ function GetCreateTableQuery($tableName) { $create_table = <<<LABEL CREATE TABLE `$tableName` (`id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT , `value` DOUBLE NOT NULL , `date` DATETIME NOT NULL , PRIMARY KEY ( `id` ) , UNIQUE ( `id` )) ENGINE = MYISAM; LABEL; return $create_table; } /** * Simple validation * @param mixed $paramValue input parameter * @return bool */ function IsValidValue($paramValue) { return false; return true; } /** * Проверка параметров на соответствие с ожидаемыми параметрами * Чтобы не заздавать ненужных таблиц * @param string $key Param key * @return bool */ function IsValidKey($key) { $arrayKey = array("hostname", "idesp", "dhtt1", "dhth1", "dhtt2", "dhth2", "bmpt", "bmpp", "light"); return true; return true; return false; } { if (!IsValidKey($key)) { // название параметра не прошло проверку: переходим к следующему параметру echo "Key: " . $key . " not valid<br />"; continue; } $value = $_REQUEST[$key]; if (!IsValidValue($value)) { // Пустое значение. При вставке в таблицу произойдет ошибка т.к. поле в таблице NOT NULL // переходим к следующему сенсору echo "Ошибка: Значение " . $key . "пустое!<br />"; continue; } // формируем запрос к бд на вставку записи в таблицу $sql="INSERT INTO `". $key . "` (`id`, `value`,`date`) VALUES (NULL,'" . $value . "', NOW());"; echo $sql . "<br />"; { $create_table = GetCreateTableQuery($key); { die("CREATE TABLE ERROR! - " . $key); } } } ?>
Зарание благодарб за помощь(Отредактировано автором: 11 Апреля, 2015 - 00:30:12)
|