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 не производит эффекта [2]

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (2): « 1 [2]   

> Без описания
tuareg
Отправлено: 26 Февраля, 2012 - 14:24:04
Post Id


Участник


Покинул форум
Сообщений всего: 1234
Дата рег-ции: Июнь 2010  


Помог: 69 раз(а)




DelphinPRO пишет:
проблема здесь SET Donate=Donate+9 WHERE ID=4)
нужно уточнить , поддерживает ли мускул такое присвоение значений. (Donate+9)

Поддерживает он, по крайней мере MySQL>5.0 точно.
 
 Top
DelphinPRO
Отправлено: 26 Февраля, 2012 - 14:26:12
Post Id



Активный участник


Покинул форум
Сообщений всего: 7187
Дата рег-ции: Февр. 2012  


Помог: 353 раз(а)




да

попробуйте
PHP:
скопировать код в буфер обмена
  1. $link_db = MYSQL_CONNECT($hostname,$username,$password)
  2.  OR DIE("Не могу создать соединение ");
  3. mysql_select_db($dbName, $link_db);
  4. mysql_query("Запрос", $link_db);


т.е. передавайте в функции идентификатор соединения с нужной вам БД.
(Добавление)
tuareg пишет:
Поддерживает он, по крайней мере MySQL>5.0 точно.

да, проверил в PMA - так можно делать.

(Отредактировано автором: 26 Февраля, 2012 - 14:26:51)



-----
Чем больше узнаю, тем больше я не знаю.
 
 Top
Arad
Отправлено: 26 Февраля, 2012 - 14:41:41
Post Id



Новичок


Покинул форум
Сообщений всего: 20
Дата рег-ции: Февр. 2012  


Помог: 0 раз(а)




DelphinPRO пишет:
да

попробуйте
PHP:
скопировать код в буфер обмена
  1. $link_db = MYSQL_CONNECT($hostname,$username,$password)
  2.  OR DIE("Не могу создать соединение ");
  3. mysql_select_db($dbName, $link_db);
  4. mysql_query("Запрос", $link_db);


Нет,не получается и так записать.
(Добавление)
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 '' at line 1
 
 Top
Arad
Отправлено: 26 Февраля, 2012 - 18:44:12
Post Id



Новичок


Покинул форум
Сообщений всего: 20
Дата рег-ции: Февр. 2012  


Помог: 0 раз(а)




Может быть проблема не в запросе?
Ещё раз отправлю скрипт:
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. require_once ('parse.inc.php');
  3.  
  4. $q = $_POST;
  5.  
  6. $params = _yusoft_parse($q);
  7.  
  8. $hostname = "****";
  9. $username = "****";
  10. $password = "*****";
  11. $dbName = "user_arad";
  12. $userstable = "Accounts1";
  13.  
  14. $test1 = $params['partner_income'];
  15. $test2 = $params['name'];
  16.  
  17. if ($params['check']) {
  18.  
  19.   // Действия по зачислению платежа. A1Lite - Ключи совпали.
  20.         $link_db = MYSQL_CONNECT($hostname,$username,$password)
  21.  OR DIE("Не могу создать соединение ");
  22. mysql_select_db($dbName, $link_db);
  23. mysql_query("UPDATE Accounts1 SET Donate=Donate+".(int)$test1." WHERE ID=".(int)$test2."", $link_db);
  24. }
  25. else {
  26.  
  27.   // Действия по ошибке. A1Lite - Ключи не совпали.
  28.  
  29.   $message  = 'Платеж не принят!';
  30.  
  31.  
  32. }
  33.  
  34. jimport('joomla.error.log');
  35. $log =& JLog::getInstance();
  36. $log->addEntry(array('comment' => $message, 'status' => 0));
  37.  
  38. ?>
 
 Top
Arad
Отправлено: 26 Февраля, 2012 - 20:55:34
Post Id



Новичок


Покинул форум
Сообщений всего: 20
Дата рег-ции: Февр. 2012  


Помог: 0 раз(а)




Вывел запрос на экран
PHP:
скопировать код в буфер обмена
  1.  
  2.  echo "UPDATE Accounts1 SET Donate=Donate+" .(int) $test1 . " WHERE ID=" .(int) $test2 ;
  3.  

Выводит: UPDATE Accounts1 SET
Donate=Donate+50 WHERE ID=4

Все правильно,но в базу не записывает.Значит проблема не в запросе?
 
 Top
nkl
Отправлено: 26 Февраля, 2012 - 21:09:05
Post Id



Посетитель


Покинул форум
Сообщений всего: 305
Дата рег-ции: Янв. 2012  


Помог: 1 раз(а)




в myadmin запрос проверь, если работает, значит все норм, причина в другом
 
 Top
Arad
Отправлено: 26 Февраля, 2012 - 21:24:29
Post Id



Новичок


Покинул форум
Сообщений всего: 20
Дата рег-ции: Февр. 2012  


Помог: 0 раз(а)




nkl пишет:
в myadmin запрос проверь, если работает, значит все норм, причина в другом

В Pma успешно выполняется
 
 Top
Arad
Отправлено: 27 Февраля, 2012 - 17:19:09
Post Id



Новичок


Покинул форум
Сообщений всего: 20
Дата рег-ции: Февр. 2012  


Помог: 0 раз(а)




Вывел
PHP:
скопировать код в буфер обмена
  1. echo '<pre>' . print_r($params, 1) . '</pre>';

Вот что выдало:
CODE (htmlphp):
скопировать код в буфер обмена
  1. <pre>Array
  2. (
  3.     [tid] => 1297249736
  4.     [name] => 4
  5.     [comment] =>
  6.     [partner_id] => 187471
  7.     [service_id] => 34263
  8.     [order_id] => 1
  9.     [type] => ym
  10.     [partner_income] => 10
  11.     [system_income] => 10
  12.     [check] =>
  13.     [email] =>
  14.     [phone_number] =>
  15. )
  16. </pre>

Судя по распечатке массива не выполняется условие
Почему то выполняется ветка
PHP:
скопировать код в буфер обмена
  1. else {
  2.  
  3.   // Действия по ошибке. A1Lite - Ключи не совпали.
  4.  
  5.   $message  = 'Платеж не принят!';
  6.  
  7.  
  8. }

Как это можно исправить?

(Отредактировано автором: 27 Февраля, 2012 - 17:19:56)

 
 Top
Страниц (2): « 1 [2]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB