Форум русской поддержки Joomla!® CMS
06.12.2016, 10:08:36 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 3.0 FAQ Joomla 2.5 FAQ Joomla 1.5 FAQ Правила форума Новости Joomla Реклама Войти Регистрация Помощь  
Страниц: [1]   Вниз
  Добавить закладку  |  Печать  
Автор

Запрос на проверку и суммирование данных в таблице

 (Прочитано 498 раз)
0 Пользователей и 1 Гость смотрят эту тему.
68pin
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Сообщений: 27


« : 20.01.2016, 01:45:30 »

Всем здравствуйте
Суть задачи следующая
У каждого пользователя есть личный код (6 цифр) и есть сумма (рубли и копейки)
Есть таблица в ней 3 поля code, sum, date, 

Необходимо реализовать занесение данных в таблицу по следующему алгоритму.
1. Если код новый (нет в таблице), то добавить код и записать сумму в sum, в date записать текущую дату.
2. Если код не новый, то прибавить к существующей (в поле sum) сумме, новую сумму и записать текущую дату.

Пока удалось реализовать через RSForm и Сопоставление SQL и записывать только новый код и новую сумму с текущей датой.
Не могу реализовать проверку наличия кода и сложение, при вводе новых данных.

Понимаю что скорей всего придется через PHP и запросы. Сам не селен в ни в том ни в другом.
Помогите решить проблему. Могу отблагодарить полным купленным официальным комплектом RSForm+dejavu.
Записан
Fedor Vlasenko
Профи
********

Репутация: +696/-5
Offline Offline

Пол: Мужской
Сообщений: 3820


Все начинается с Value


« Ответ #1 : 20.01.2016, 03:34:08 »

INSERT ... ON DUPLICATE KEY UPDATE в помощь
Записан
68pin
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Сообщений: 27


« Ответ #2 : 20.01.2016, 08:27:01 »

INSERT ... ON DUPLICATE KEY UPDATE в помощь
Нашёл вот этот код.
// находим объект
$row = query('SELECT * FROM table WHERE id=1');
// проверяем есть ли такой объект
if ($row) {
// делаем апдейт
query('UPDATE table SET column=column+1 WHERE id=1');
}
else {
// делаем вставку
query('INSERT INTO table SET column=1, id=1');
}
он подходит. Вставить его в PHP скрипт?. Вот только как в него вставить данные из формы?
Записан
Fedor Vlasenko
Профи
********

Репутация: +696/-5
Offline Offline

Пол: Мужской
Сообщений: 3820


Все начинается с Value


« Ответ #3 : 20.01.2016, 13:42:13 »

68pin это не совсем то. так будет 2 запроса, а красиво можете сделать одним
как написал выше. в поиск вбейте и ознакомьтесь предварительно с информацией
Записан
68pin
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Сообщений: 27


« Ответ #4 : 20.01.2016, 17:28:39 »

Я почитал о INSERT ... ON DUPLICATE KEY UPDATE
Я правильно понял?
мне на поле date необходимо поставить UNIQUE и выполнить запрос

А как прицепить данные из RSформы к запросу?
Записан
Страниц: [1]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Powered by SMF 1.1.21 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet