Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Запись данных в БД из цикла
При попытке записи в таблицу, записывается только последнее значение.
Запись происходит так:
//Отправляем данные в таблицу
$sql = "INSERT INTO sensor_readings (sensor_id, sensor_value) VALUES ('$addrs[0]', '$addrs[1]')";
if(!mysql_query($sql))
{echo '<p><b>Data upload error!</b></p>';}
else
{echo '<p><b>OK</b></p>';}
// закрываем соединение с базой
mysql_close($connect);
Собственно как мне получить все значения из цикла опроса.
DelphinPRO
Отправлено: 22 Июля, 2014 - 20:49:35
Активный участник
Покинул форум
Сообщений всего: 7187
Дата рег-ции: Февр. 2012
Помог: 353 раз(а)
вызывайте mysql_query внутри цикла
----- Чем больше узнаю, тем больше я не знаю.
Divest
Отправлено: 22 Июля, 2014 - 20:59:05
Новичок
Покинул форум
Сообщений всего: 13
Дата рег-ции: Июль 2014
Помог: 0 раз(а)
DelphinPRO пишет:
вызывайте mysql_query внутри цикла
Смысл куда смотреть понятен, а вот, к сожалению, что с этим делать, нет.
DelphinPRO
Отправлено: 22 Июля, 2014 - 21:02:00
Активный участник
Покинул форум
Сообщений всего: 7187
Дата рег-ции: Февр. 2012
Помог: 353 раз(а)
как говорилось в одном бородатом анекдоте - если смски до вас не доходят, попробуйте перечитать их еще раз
без обид просто не вижу куда понятнее сказать.
----- Чем больше узнаю, тем больше я не знаю.
lastdays
Отправлено: 22 Июля, 2014 - 21:06:35
Частый гость
Покинул форум
Сообщений всего: 221
Дата рег-ции: Март 2013
$sql="INSERT INTO sensor_readings (sensor_id, sensor_value) VALUES ('$addrs[0]', '$addrs[1]')";
И почему это только одна запись там
Divest
Отправлено: 22 Июля, 2014 - 21:11:12
Новичок
Покинул форум
Сообщений всего: 13
Дата рег-ции: Июль 2014
Помог: 0 раз(а)
[quote=DelphinPRO][/quote]Да мне больше чем понятно, что я полный нуб в этом. Есть идея, разбираюсь тихонько. И даже не думаю обижаться. И готов перечитывать, и не раз. Сижу читаю http://php.net/manual/ru/functio....mysql-query.php
Вот не дает мне эта статья особо ничего и все. Попробовал десять вариантов разных запросов. Вот если не разжевать мне на моем примере, ничего и не пойму. (Добавление)
$sql="INSERT INTO sensor_readings (sensor_id, sensor_value) VALUES ('$addrs[0]', '$addrs[1]')";
И почему это только одна запись там
И тут я понимаю прекрасно, почему у меня одна запись только записывается в БД. Но понимаю это на каком-то "блондинистом" уровне. Прекрасно понял что на момент записи данных в БД, переменные $addrs[0] и $addrs[1] имеют в себе значение последних данных, которые были получены после
Вот меня и интересует, как вместо echo $addrs[0].' - '.$addrs[1].PHP_EOL.'<br/>' получить что-то типа INSERT INTO sensor_readings (sensor_id, sensor_value) VALUES ('$addrs[0]', '$addrs[1]')
lastdays
Отправлено: 22 Июля, 2014 - 21:26:38
Частый гость
Покинул форум
Сообщений всего: 221
Дата рег-ции: Март 2013
Помог: 7 раз(а)
Записать в переменную данные.
Вместо echo установить $update к примеру.
Divest
Отправлено: 22 Июля, 2014 - 21:48:56
Новичок
Покинул форум
Сообщений всего: 13
Дата рег-ции: Июль 2014
Помог: 0 раз(а)
lastdays пишет:
Записать в переменную данные.
Вместо echo установить $update к примеру.
Хорошо, я записал эти данные в переменную $update
При выводе данных из переменной $update, в данный момент мы получаем:
28FF820410140093 - 25.00
28FFE90310140074 - 25.50
Тогда встает новый вопрос, как эти данные записать в таблицу. Таблица имеет след. столбцы:
sensor_id
sensor_value
date_time
Где 28FF820410140093 это sensor_id, а 25.00 собственно sensor_value? Никак не могу понять. Реальным решением вижу mysql-query, но пока не могу понять как это вставить.
lastdays
Отправлено: 22 Июля, 2014 - 22:01:28
Частый гость
Покинул форум
Сообщений всего: 221
Дата рег-ции: Март 2013
mysql_query("INSERT INTO `sensor_readings` (`sensor_id`,`sensor_value`) VALUES ('".$addrs[0]."','".$update."');") or die();
Собственно это не помогло. Так-же записывает только последние данные в таблицу. Если у кого-то есть варианты, отпишите пожалуйста. Если найду решение, обязательно выложу
lastdays
Отправлено: 22 Июля, 2014 - 22:40:11
Частый гость
Покинул форум
Сообщений всего: 221
Дата рег-ции: Март 2013
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.