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 :: UPDATE не производит эффекта
Покинул форум
Сообщений всего: 20
Дата рег-ции: Февр. 2012
Помог: 0 раз(а)
Здравствуйте,Уважаемые пользователи форума!Моя проблема заключается вот в чём,решил подключить платёжную систему,по задумке скрипт обработчик должен оплачиваемую сумму прибавить к столбцу Donate значение переменной $test1.Информация в эти переменные должна записываться из POST запроса.Так-же стоит условие,по которому информация в столбце Donate должна обновляться,в той строке,где ID равна значению переменной $test2. При тестировании,выяснилось,что в базу ничего не записывается,то есть,какое было значение у Donate,такое и осталось.
Вот сам скрипт обработчика:
mysql_query(" UPDATE `Accounts1` SET `Donate`=`Donate`+'$test1' WHERE `ID`='$test2'");
DelphinPRO
Отправлено: 25 Февраля, 2012 - 20:41:46
Активный участник
Покинул форум
Сообщений всего: 7187
Дата рег-ции: Февр. 2012
Помог: 353 раз(а)
mysql_error() ошибку выдает? если да - какую?
----- Чем больше узнаю, тем больше я не знаю.
Arad
Отправлено: 25 Февраля, 2012 - 21:01:01
Новичок
Покинул форум
Сообщений всего: 20
Дата рег-ции: Февр. 2012
Помог: 0 раз(а)
DelphinPRO пишет:
mysql_error() ошибку выдает? если да - какую?
Попробовал вывести на экран ошибку,выдало:
Цитата:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SET `Donate`=`Donate`+'9.5' WHERE `ID`='4')' at line 1
DelphinPRO
Отправлено: 25 Февраля, 2012 - 21:22:42
Активный участник
Покинул форум
Сообщений всего: 7187
Дата рег-ции: Февр. 2012
Помог: 353 раз(а)
ошибка в запросе, здесь: `Donate`+'$test1'
Что вы этим хотели сделать? Увеличить имеющееся значение? (Добавление)
я думаю вот так прокатит
mysql_query("UPDATE Accounts1 SET Donate=Donate+".(int)$test1." WHERE ID='$test2'")
в смысле - цифру которая в $test1 не надо в кавычки брать. Закавычивают текстовые значения.
Попробовал исправить,переменная $test2 тоже несёт цифру,поэтому исправил и её.И вот что выдаёт всё равно:
Цитата:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SET Donate=Donate+9 WHERE ID=4)' at line 1
Получается,проблема где то ещё.Вот собственно сам код запроса,который получился:
Посмотрите что выводит. Скопируйте и сделайте запрос через пхпмайадмин.
Arad
Отправлено: 26 Февраля, 2012 - 14:22:38
Новичок
Покинул форум
Сообщений всего: 20
Дата рег-ции: Февр. 2012
Помог: 0 раз(а)
Всё это дело на движке Joomla,и она подключена к другой базе.
А этот скрипт по идеи должен работать с базой,которая находится на другом сервере.
Возможно ли такое,что этот запрос идёт к базе,к которой подключён движок?
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.