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
Форумы портала PHP.SU :: Версия для печати :: Вычитание и обновление даты
Форумы портала PHP.SU » PHP » SQL и Архитектура БД » Вычитание и обновление даты

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

1. jonmodem - 16 Апреля, 2013 - 20:42:54 - перейти к сообщению
Вот собственно код:
PHP:
скопировать код в буфер обмена
  1.         $userPayDay = time();
  2.         $tableName = "lbrtrz_users";
  3.         $fieldName = "user_payday";
  4.         $field_name = "user_balance";
  5.        
  6.         $link = mysql_connect($db_host, $db_user, $db_pwd);
  7.         mysql_select_db($db_name, $link);
  8.  
  9.         $query = "INSERT INTO $tableName ($fieldName) VALUES ('$userPayDay') DATE_FORMAT('$userPayDay', '%d.%m.%Y') WHERE id=$user_id";
  10.         $request = mysql_query($query, $link);
  11.         $result = mysql_fetch_array($request);
  12.        
  13.         $counti = "INSERT INTO $tableName ($field_name) VALUES ('-20') WHERE id=$user_id";
  14.         $counting = mysql_query($counti, $link);
  15.         $total = mysql_fetch_array($counting);


Ничего из этого не работает. Задача: при нажатии на кнопку подтверждения в форме, запрос отправляется на файл этого скрипта, в таблице обновляется дата и из строки баланса вычитается цифра 20
2. LIME - 16 Апреля, 2013 - 21:20:22 - перейти к сообщению
3. jonmodem - 17 Апреля, 2013 - 14:10:45 - перейти к сообщению
LIME пишет:
INSERT vs UPDATE
http://dev.mysql.com/doc/refman/5.6/en/update.html

Изменил, все работает, но при этом еще и ошибку выдаёт. Вот код:
PHP:
скопировать код в буфер обмена
  1.         $userPayDay = time();
  2.         $tableUsers = "lbrtrz_users";
  3.         $fieldPayDay = "user_payday";
  4.         $fieldBalance = "user_balance";
  5.         $user_id = get_current_user_id();
  6.  
  7.         $paydayTake = "SELECT $fieldPayDay FROM $tableUsers WHERE id=$user_id";
  8.         $paydayAsk = mysql_query($paydayTake, $link);
  9.         $paydayAns = mysql_fetch_array($paydayAsk);
  10.         mysql_error();
  11.         echo $paydayAns[$fieldPayDay];
  12.  
  13.         $balansTake = "SELECT $fieldBalance FROM $tableUsers WHERE id=$user_id";
  14.         $balanceAsk = mysql_query($balansTake, $link);
  15.         $balanceAns = mysql_fetch_array($balanceAsk);
  16.         mysql_error();
  17.         echo $balanceAns[$fieldBalance];
  18.        
  19.         if ( $balanceAns[$fieldBalance] >= 20 ) {
  20.                 $payTake = "UPDATE $tableUsers SET $fieldBalance=$balanceAns[$fieldBalance]-20 WHERE id=$user_id";
  21.                 $payAsk = mysql_query($payTake, $link);
  22.                 $payAns = mysql_fetch_array($payAsk);
  23.                 mysql_error();
  24.         } else {
  25.                 echo "<span>Недостаточно денег</span>";
  26.         }
4. avtor.fox - 17 Апреля, 2013 - 14:26:18 - перейти к сообщению

http://mizter[dot]ru/workroom/getpages
Бросайте. Бросайте это дело..
5. jonmodem - 17 Апреля, 2013 - 16:12:54 - перейти к сообщению
avtor.fox пишет:

http://mizter[dot]ru/workroom/getpages
Бросайте. Бросайте это дело..


Что не так?

 

Powered by ExBB FM 1.0 RC1