<?php
require_once ('vendor/autoload.php');
require_once 'C:\xampp\htdocs\blog\core\init.php';
$_SESSION['user_id'] = 10;
$stripe = array(
"secret_key" => "sk_test_vDYOBYxCErhrgGCeWQJhR4mQ",
"publishable_key" => "pk_test_4mIuE3OsajKO4cnFppcDDISu"
);
\Stripe\Stripe::setApiKey($stripe['secret_key']);
$db = new PDO('mysql:host=127.0.0.1;dbname=blog', 'root', '******');
$userQuery = $db->prepare("
SELECT id, username, email, premium
FROM users
WHERE id = :user_id
");
$sql = "UPDATE users
SET premium = 1
WHERE id = :user_id";
$userQuery->execute(['user_id' => $_SESSION['user_id']]);
$user = $userQuery->fetchObject();
?>
如何在购买保费后更新某位用户?
这是我能让它发挥作用的唯一方法。
我想通过用户名或电子邮件更新用户,但我失败了。我希望它能够在购买过程中提取已登录帐户的电子邮件/用户名,因此它会在&amp;之后立即在我的数据库中更新。不会更新错误的人,或更糟糕的每个人!
答案 0 :(得分:3)
以下代码将根据给定的电子邮件地址将变量“premium”设置为1。请注意,电子邮件必须是唯一的,否则具有该电子邮件地址的所有用户将变得优质
$sql = "UPDATE users
SET premium = 1
WHERE email = :user_email";
$userQuery->execute(['user_email' => $theEMailAddressOfTheUserThatPurchasedPremium]);