Problems with User Session in PHP

0

I have a system of bets, in this system I have dealers to sell the bets, and they earn commission for it.

The problem is: When many resellers are online selling and posting bets on the system, at some point the dealer's betting line 1 is registered to the dealer 5.

The fact is that this does not make any sense, I've read the code several times and I do not think the problem .. Maybe the people here in the community can help me

public function logar($cpf, $senha, $con)
    {
        // Prepara Query for Update Login
        $query = "UPDATE 'user' SET 'last_login'  = NOW() WHERE 'cpf' = '$cpf'";

        // executa a query
        $dados = mysqli_query($con, $query) or die(mysqli_error($con));

        // Prepara Query
        $query = "SELECT * FROM 'user' WHERE 'cpf'  = '$cpf' AND 'senha' = '$senha'";

        // executa a query
        $dados = mysqli_query($con, $query) or die(mysqli_error($con));

        // 20/10/14 - Essa Linha Chama o primeiro registro, então na consulta só mostra do segundo valor em diante
        $linha = mysqli_fetch_assoc($dados);

        // transforma os dados em um array
        /* 20/10/14 - Essa Linha Reseta as Chamadas para poder exibir do primeiro em Diante */
        mysqli_data_seek($dados, '0');

        // calcula quantos dados retornaram no total
        $total = mysqli_num_rows($dados);

        if ($total == 1) {
            $_SESSION["id"] = $linha["id"];
            $_SESSION["nome"] = $linha["nome"];
            $_SESSION["cpf"] = $linha["cpf"];
            $_SESSION["nivel"] = $linha["nivel"];


            if ($linha['nivel'] == 2){
                header("Location: ../colab_dash.php");
            }
            elseif ($linha['nivel'] == 1){
                header("Location: ../op_dash.php");
            }
            elseif ($linha['nivel'] == 3){
                header("Location: ../adm_dash.php");
            }
        }
        else
            echo "<div class='alert alert-warning'>
                <button type='button' class='close' data-dismiss='alert' aria-hidden='true'>&times;</button>
                <strong>CPF ou Senha Inválidos</strong> Verifique suas informações e tente novamente
            </div>";

    }

Edited : Function that registers bets sold;

public function setBet($punter_name, $punter_phone, $value, $colab_id, $array_match_and_bet, $status_bet, $con)
    {
        $query = "SET TIME_ZONE = '-03:00';";
        $con->query($query) or die('Erro na definição da timezone, tente mais tarde');
        // Cadastrar Cabeçalho e Pegar ID Aposta
        $query = "INSERT INTO bet(id, punter_name, punter_phone, value, colab_id, date_time, possible_prize, status_bet) values(NULL, '$punter_name', '$punter_phone', '$value', '$colab_id', now(), 0, $status_bet);";
        $data = $con->query($query) or die('Erro na inserção, tente mais tarde');
        $last_id = $con->insert_id; // aqui guarda este e só este id, desta conecção que inseriu o novo dado

            // Hora de cadastrar as partidas selecionadas Bitch
            sort($array_match_and_bet);
            $count = count($array_match_and_bet);
            for ($i=0; $i < $count ; $i++) { 
                $match_and_bet = explode('-', $array_match_and_bet[$i]);
                // var_dump($match_and_bet);
                $id_match = $match_and_bet[0];
                $type_bet = $match_and_bet[1];
                $odd_at_time = $match_and_bet[2];
                // Vetor para ser utilizado no calculo do premio possivel
                $odds[] = $match_and_bet[2];
                $query = "INSERT INTO 'bet_matches' SET match_id = $id_match, type_bet = '$type_bet', bet_id = $last_id, datetime_add = now(), odd_at_time = $odd_at_time";
                // var_dump($query);
                $data = mysqli_query(Conexao::conectar(), $query);
                if (!$data) {
                    exit();
                }
            }
            // Calcula a cotacao
            $possible_prize = Bet::calcBetPossiblePrize($odds) * $value;
            // Guarda o Premio Possivel
            Bet::setPossiblePrize($possible_prize, $last_id);

            if ($data) {
                    header("Location: ../bet_details.php?bet_id=".$last_id."&msg=betMakeSuccess");
                }
                else{
                    header("Location: ../bet_details.php?bet_id=".$last_id."&msg=betMakeDuplicate");
                }
    }
    
asked by anonymous 22.06.2016 / 16:23

0 answers