How to Update 2 tables with Switch case and database data and others coming from an xml return?

0

switch / case that runs in the bank to see which id ta and get the value in the switch and pass to the other table in the update ... is there any error anyone could help?

<?php

require_once("core/config/config.php");

if (isset($_POST['notificationType']) && $_POST['notificationType'] == 'transaction') {

    //CÓDIGO DA NOTIFICAÇÃO
    $code = $_POST['notificationCode'];

    //MONTAMOS A URL PARA PEGAR O STATUS
    $url = 'https://ws.sandbox.pagseguro.uol.com.br/v2/transactions/notifications/' . $code . '?email=' . $email . '&token=' . $token;

    //PEGAMOS O STATUS VIA CURL
    $curl = curl_init($url);
    curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);

    $transaction= curl_exec($curl);
    curl_close($curl);

    //SE DER ALGUM ERRO NO NOSSO CURL VAI VIM COMO Unauthorized
    if($transaction == 'Unauthorized'){


        exit;//Mantenha essa linha
    }

    $pdo = conectaDB();
                    $get = $pdo->prepare("SELECT * FROM pagseguro");
                    $get->execute();

                    $query = $get->fetchAll(PDO::FETCH_ASSOC);

                    foreach ($query as $row) {
                            $user =   $row['id_user'];
                            $codigo_transacao = $row['id_transacao'];
                            $codigo = $row['packed'];
                    }


    $entregue = 'S';

    switch ($query->$codigo) {
        case '1':
            $chips = '30.00';
            break;

        case '2':
            $chips = '50.00';
            break;

        case '3':
            $chips = '100.00';
            break;

        case '4':
            $chips = '250.00';
            break;
        }

    //COMVERTE O RERTORNO EM STRING
    $transaction = simplexml_load_string($transaction);       

    /*
     * STATUS RETORNO         
     * 1 - Aguardando pagamento
     * 2 - Em análise
     * 3 - Paga
     * 4 - Disponível
     * 5 - Em disputa
     * 6 - Devolvida
     * 7 - Cancelada
     */ 

    //PEGAMOS O CÓDIGO DO STATUS
    switch ($transaction->status) {
        case '1':
            $status = 'Aguardando pagamento';
            break;

        case '2':
            $status = 'Em análise';
            break;

        case '3':
            $status = 'Paga';
            $edit2   = $pdo->prepare("UPDATE pagseguro SET entregue=:entregue WHERE id_transacao=:id_transacao");
            $edit2->bindValue(':entregue', $entregue);           
            $edit2->bindValue(':id_transacao', $transaction->code);
            $edit2->execute();

           // SECOND CASE
            $update   = $pdo->prepare("UPDATE users SET credits=:credits WHERE username=:user_pagseguro");
            $update->bindValue(':credits', $chips);           
            $update->bindValue(':user_pagseguro', $user);
            $update->execute();
            break;

        case '4':
            $status = 'Disponível';
            break;

        case '5':
            $status = 'Em disputa';
            break;

        case '6':
            $status = 'Devolvida';
            break;

        case '7':
            $status = 'Cancelada';
            break;                      
    }

    //ATUALIZAMOS O STATUS NO BANCO DADOS.
    $pdo    = conectaDB();
    $edit   = $pdo->prepare("UPDATE pagseguro SET status=:status WHERE id_transacao=:id_transacao");
    $edit->bindValue(':status', $status);           
    $edit->bindValue(':id_transacao', $transaction->code);

    $edit->execute();           
}   
?>

example of a piece of my bank in the part that has the change the package and the id of the user ...

─────────────────────────────────────────────────────────
|   id_user        |   codigo_transacao        |   packed |
─────────────────────────────────────────────────────────
|   Joaozinho   |   2asd654asd65as4c           |   1      |
─────────────────────────────────────────────────────────
|   Mariazinha  |   1asd654as123214d           |   2      |
─────────────────────────────────────────────────────────
|   Carlinhos   |   4asd654asd65as4dasd2       |   4      |
─────────────────────────────────────────────────────────
    
asked by anonymous 24.06.2017 / 17:45

0 answers