Обновить базу после полной оплаты PayPal - PullRequest
0 голосов
/ 15 февраля 2011

У меня нет проблем с вставкой транзакции после завершения покупки.
проблема заключается в том, как обновить данные.

Таблица MySQL: ПОЛЬЗОВАТЕЛИ:

  id |   email        |  credit
----------------------------
  1    user@email.com      2
  2    user2@email.com     1

PayPalIPN:

$p = new paypal_class;  
if ($p->validate_ipn()) {
  if($p->ipn_data['payment_status'] == 'Completed') {
    $db->query("UPDATE users SET credit='". $p->ipn_data['custom'] . "' WHERE email='" . $p->ipn_data['payer_email'] . "'");
  }
}

КНОПКА PAYPAL -> скрытый (настраиваемый) = 5 кредитов
КНОПКА PAYPAL -> скрытый (настраиваемый) = 10 кредитов

, если user 1 хотите пополнить счеткредит, оставшийся у него кредит (2) + PayPal (5) = 7.
вместо замены кредита (2) на (5).

1 Ответ

1 голос
/ 15 февраля 2011

Убедитесь, что поле кредита является числовым типом, затем:

$db->query("UPDATE users SET credit= credit + ". $p->ipn_data['custom'] . " WHERE email='" . $p->ipn_data['payer_email'] . "'");
...