将条带信息存储为user_meta

时间:2016-10-26 作者:Christian

我使用Stripe webhook存储客户在Stripe中收费时收取的美元金额。

我的webhook工作正常,可以通过电子邮件发送费用金额,但似乎无法将其存储在WordPress user\\u meta字段中。

下面是我的代码:

// Retrieve the request\'s body and parse it as JSON
$input = @file_get_contents("php://input");
$event_json = json_decode($input);

// Check against Stripe to confirm that the ID is valid
$event = \\Stripe\\Event::retrieve($event_json->id);

// If charge is successful, store in user meta
if (isset($event) && $event->type == "charge.succeeded") { 
  $amount = $event->data->object->amount / 100;
}
$payment_user_id = 9192321; 
update_user_meta($payment_user_id, \'payment_history\', $amount);
这是因为从stripe接收到的json的格式需要转换为某种格式,然后才能存储它吗?如果我尝试使用intval($amount)将其转换为整数,它只会将其存储为0。

提前感谢!

1 个回复
最合适的回答,由SO网友:cowgill 整理而成

听起来像$amount 变量为空,因此不保存。回传出来看看发生了什么。

确保$payment_user_id 是实际的WordPressuser_id.

包装您的update_user_meta 在if语句中。

// If charge is successful, store in user meta
if (isset($event) && $event->type == "charge.succeeded") { 
  $amount = $event->data->object->amount / 100;

  echo $amount . \' <- $amount\';

  $payment_user_id = 9192321; 
  update_user_meta($payment_user_id, \'payment_history\', $amount);
}