SSGamers - 12 Anos online por você.

#SSGamers - A Comunidade que mais crescer no brasil!

Participe do fórum, é rápido e fácil

SSGamers - 12 Anos online por você.

#SSGamers - A Comunidade que mais crescer no brasil!

SSGamers - 12 Anos online por você.

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
Chegou o novo tema 6.5.5 - SSGamers - Servidores online de qualidade - Aproveite e entre para nossa comunidade, inscreva-se já! - Ouça nossa web radio - Veja nossas novidades - Participe dos nossos setores de jogos online - Parcerias aberta fale já com um administrador.

    [Tutorial] O Uso do MySQL (Plugin: BlueG)

    Weslley_Script
    Weslley_Script
    SS - Fundador
    SS - Fundador


    Steam Steam : WeslleySSGames
    Zello : WeslleySSGames
    Mensagens : 11378
    Moedas : 1031966
    Data de inscrição : 06/10/2011
    Idade : 28
    Localização : Brasil

    [Tutorial] O Uso do MySQL (Plugin: BlueG) Empty [Tutorial] O Uso do MySQL (Plugin: BlueG)

    Mensagem por Weslley_Script Ter 11 Abr 2023 - 14:31

    [Tutorial] O Uso do MySQL (Plugin: BlueG) YYbmVFn
    Para desenvolver projetos de qualidade é preciso estar se adequando e aprimorando nossos conhecimentos.
    O uso do MySQL se torna essencial para alcançar uma qualidade e uma segurança adequada em nossos projetos, neste breve tutorial abordarei algumas das principais funções do Plugin MySQL criado por BlueG.

    1. Ferramentas

    O primeiro passo é sempre o mais importante, nele iremos ter conhecimento das ferramentas que iremos utilizar.
    WAMPServer - Precisamos de um servidor Apache rodando em nossa máquina para trabalhar com o phpMyAdmin, recomendo o WampServer. Fique à vontade para usar outro de sua preferência (Xampp, VertrigoServ, EasyPHP).

    phpMyAdmin -Por que usar o phpMyAdmin? A resposta é bem simples: O phpMyAdmin vai facilitar o trabalho de integração em um futuro UCP e também terá a praticidade de criação e administração de banco de dados.

    Plugin MySQL (BlueG) - utilizando este plugin por ser o mais atual presente na comunidade e ao meu ver o melhor.

    2. Estrutura

    Tendo já todas as ferramentas a disposição precisaremos montar a estrutura do nosso sistema, é importante saber que ao salvar uma informação precisaremos de uma identificação para posteriormente poder identificar e carregar esta informação salva. Tendo isto em mente precisaremos de um ID (Identificação), então toda tabela que criarmos, precisaremos de uma coluna ID, por exemplo:
    [Tutorial] O Uso do MySQL (Plugin: BlueG) HsUrQfI
    [Tutorial] O Uso do MySQL (Plugin: BlueG) EriYow2
    PHP como:

    Código:
    id (Lembre-se sempre de definir como AUTO_INCREMENT & PRIMARY KEY)
    name
    pass 

    AUTO_INCREMENT - Esta função incrementa o valor da ID da coluna, por exemplo: sempre que um novo registro for adicionado a tabela a ID da coluna será incrementada com um valor.

    PRIMARY KEY - Esta função indica que a coluna terá um valor exclusivo, ou seja, o valor não se repetirá.

    Tendo essas descrições em mente é de extrema importância a combinação destas funções na coluna ID, pois com ela teremos uma identificação de cada registro, por exemplo: Ao realizarmos um registro, digamos que pela primeira vez, a

    coluna id receberá o valor “id = 1” , o registro seguinte recebeá o valor “id = 2” , pois os valores contidos na coluna id não devem ser repetidos entre o AUTO_INCREMENTincrementa um valor e a função PRIMARY_KEY informa pro AUTO_INCREMENT que os valores não podem ser repetidos.

    3. Inserção de Dados

    Nesta parte entenderemos melhor o funcionamento do processo de inserção de dados em uma tabela, utilizandoei como exemplo a estrutura mostrada acima.
    Partiremos da seguinte situação: precisamos cadastrar o nome de usuário e a senha do usuário.
    PHP como:

    Código:
    new sG[128]; //Esta variбvel й meramente ilustrativa, nгo se preocupem com ela.
    format(sG,sizeof(sG), "INSERT INTO users (name,pass) VALUES ('%s','%s')",name,pass);
    mysql_query(1,sG); 

    Como podemos ver acima, com apenas duas linhas de cуdigo criamos um em nosso banco de dados, vocк pode ter notado que o ' id' nгo foi especificado, o motivo й que por se tratar de uma coluna AUTO_INCREMENT nгo й necessбrio que fornecemos um valor ao convertido uma inserção.
    Vamos agora destrinchar tudo o que foi usado e entendermos o porque de seu uso.

    Format - O uso do Format é de grande importância para inserir os dados necessários na função de inserção.

    INSERT INTO (INSIRA DENTRO DE) – Nesta função vamos declarar onde vamos inserir os dados, neste caso vamos inserir na tabela 'users' em seguida definimos as colunas as quais vamos inserir os dados '(name,pass)', em seguida especificamos os valores VALUES ('%s','%s') , por se tratar de colunas de texto utilizamos aspas simples e como estamos utilizando o Format utilizamos '%s' .

    mysql_query – Esta função fica responsável por executar o cadastro, sem ela a “mágica” não ocorreria, nela especificamos o número da conexão (1) , em seguida inserimos o valor formatado na função format (sG) .
    PHP como:

    Código:
    mysql_query(1,"INSERT INTO users (name,pass) VALUES ('Fulano','ZikadaBalada')"); 

    Deste outro modo visto acima, podemos inserir dados na tabela 'users' , por que não podemos formatar os valores, este modo não pode ser usado em um sistema de registro por exemplo.

    4. Seleção de Dados

    Nesta etapa veremos como selecionar dados de uma tabela e registrar os dados em variáveis.
    Primeiramente vamos criar uma estrutura básica em nosso cуdigo para que assim possamos preservar os dados extraídos de nosso banco de dados:
    PHP como:

    Código:
    enum users
    {
     id,
     name[MAX_PLAYER_NAME],
     pass[128],
    }
    new User[MAX_PLAYERS][users]; 

    Agora vamos executar uma função de carregamento de dados de um usuário específico:
    PHP como:

    Código:
    new resultados, n[MAX_PLAYER_NAME];
    format(sG,sizeof(sG),"SELECT * FROM users WHERE id = %d",id);
    mysq_query(1,sG);
    resultados = cache_num_rows();
    if(resultados > 0)
    {
     User[playerid][id] = cache_get_field_content_int(0, "id");
     cache_get_field_content(0, "name", n); strcat(User[playerid][Name],n,128);


    cache_get_field_content_int(linha,nome do campo) - Esta função é específica para a coleta de valores inteiros.
    linha - Por se tratar de uma seleção de dados especifica onde visamos o retorno de somente 1 resultado
    mantemos o valor de linha em '0', pois vamos coletar o valor da primeira linha encontrada.
    nome do campo - O nome do campo refere-se ao nome da coluna, entгo neste caso estamos resgatando o valor da coluna 'id' .
    PHP como:

    Código:
    enum houses
    {
     id,
    }
    new House[MAX_PLAYERS][houses]; 

    PHP como:

    Código:
    new resultados;
    mysql_query(1,"SELECT * FROM houses");
    mysq_query(1,sG);
    resultados = cache_num_rows();
    for(new r; r < resultados; r++)
    {
     House[r][id] = cache_get_field_content_int(r, "id"); 


    Neste segundo caso podemos notar a presença de um "for()" que é executado em torno do valor encontrado em vários "resultados" .
    cache_num_rows() - Esta função é responsável por retornar o número de linhas encontradas na busca realizada por "mysql_query()" .

    5. Atualização de Dados

    Nesta etapa veremos a grande importação da coluna "id" , ao atualizarmos um valor presente na tabela precisaremos especificar o ID onde iremos direcionar as mudanças, por exemplo:

    precisamos mudar o nome de um usuário específico:
    PHP como:

    Código:
    format(sG,sizeof(sG),"UPDATE users SET name = '%s' WHERE id = %d",name,id);
    mysql_query(1,sG); 

    Em outros casos, não precisaremos do uso do ID:
    PHP como:

    Código:
    format(sG,sizeof(sG),"UPDATE users SET name = '%s' WHERE name = '%s'",new_name,old_name);
    mysql_query(1,sG); 

    O segundo método pode parecer um pouco confuso, mas é simples, vamos gravar na variável 'old_name' ou nome atual, a função mysql_query vai estimular uma busca na tabela em busca de um registro que possuía name = old_name.
    A diferença entre ambos é somente a variável de identificação, em um buscamos pelo ID e em outro buscamos pelo Nome.
    A condição WHERE tem papel fundamental nos dois métodos usados ​​acima, pois sem ela não seria possível criar uma condição para executar as atualizações.

    6. Considerações Finais

    Pois bem, como podemos notar, é muito simples utilizar o MySQL em nossos futuros projetos, nestes exemplos tentei desenvolver a possibilidade da criação de um código limpo e simples.

    Por exemplo:
    PHP como:

    Código:
    MySQL_function_query(dbHandle, "SELECT * FROM players WHERE name = 'Andre' LIMIT 0,1", true, "OnPlayerDataLoad", "s", "Andre");
    forward OnPlayerDataLoad(name[]);
    public OnPlayerDataLoad(name[])
    {
        new rows, fields;
        cache_get_data(rows, fields);
        if(!rows)
        {
            print(!"Andre is not a registered account on this server!");
        }
        else
        {
            printf("Andre is registered (1 row with %d fields)", fields);
        }


    No exemplo acima, é necessário criar uma nova callback para fazer o retorno dos dados, farei a mesma função de uma forma mais simples abaixo:
    PHP como:

    Código:
    new rows, fields;
    format(sG,sizeof(sG),"SELECT * FROM players WHERE name = 'Andre' LIMIT 0,1");
    mysql_query(1,sG);
    cache_get_data(rows, fields);
    if(!rows) 

        print(!"Andre is not a registered account on this server!"); 

    else 

        printf("Andre is registered (1 row with %d fields)", fields); 


    Bem, entгo й isso, peзo perdгo por erros ortбficos e espero que de alguma forma este texto possa vir a ser ъtil para vocк, deixe o seu feedback com sugestхes para que eu possa estar vindo a melhor nos prуximos tutoriais.

    7. Crйditos
    Elaboraзгo do Tutorial: MtC
    Plugin MySQL: BlueG



    [Tutorial] O Uso do MySQL (Plugin: BlueG) D07Xwqb
    [Tutorial] O Uso do MySQL (Plugin: BlueG) Yjab9HN

      Data/hora atual: Sáb 27 Abr 2024 - 18:08