<?php
header("Access-Control-Allow-Origin: *");
// Permitir métodos de solicitação específicos
header("Access-Control-Allow-Methods: GET, POST, OPTIONS");
header("Access-Control-Allow-Headers: Content-Type");
// Definir o tempo de vida do cabeçalho CORS em cache (em segundos)
header("Access-Control-Max-Age: 86400");
header('Content-Type: application/json; charset=utf-8');
//$username = $_GET["nome"];
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
// Obtém o JSON enviado pelo cliente e converte em um objeto PHP
$jsonPayload = file_get_contents('php://input');
$data = json_decode($jsonPayload);
// Verifica se o JSON foi decodificado corretamente
if ($data === null) {
// Se houve um erro ao decodificar o JSON, envie uma resposta de erro
http_response_code(400); // Requisição inválida
echo json_encode(array('error' => 'JSON inválido'));
exit;
}
// Agora você pode acessar as propriedades do objeto como desejar
$token = $data->token;
$saldo = $data->saldo;
$price = $data->price;
$qtde = $data->qtde;
}
$output = array("results" => array());
$mysqli = mysqli_connect('database', 'root', 'yrprey', 'yrprey');
/* Check connection before executing the SQL query */
if ($mysqli->connect_errno) {
printf("Connect failed: %s\n", $mysqli->connect_error);
exit();
}
if ($saldo >= $price) {
$query = "UPDATE users SET saldo=saldo-$price WHERE token = '$token' AND saldo > 0";
$debitado = mysqli_query($mysqli, $query);
if ($debitado === TRUE) {
$status = 200;
$msg = "Compra realizada com sucesso!";
$q = "INSERT INTO historico (`id`, `token`, `valor`) VALUES (NULL, '$token', '$price')";
$exec = mysqli_query($mysqli, $q);
} else {
$status = 400;
$msg = "Você não possui saldo!";
}
$output = array("results" => array());
}
$array = array(
'status' => $status,
'msg' => $msg
);
array_push($output["results"], $array);
echo json_encode($output, 128);
|