SchultzGames
Para tirar dúvidas, crie um tópico especifico na área "Dúvidas em Geral" e aguarde ser respondido. Evite comentar em tópicos não relacionados a sua dúvida :D
TÓPICOS RECENTES:
Tópico:
Postado em:
Postado por:
[____TÓPICO LIVRE____] FALE O QUE QUISER (Parte 2)
Alguém sabe explicar o que exatamente essas Opções fazem?
MonoDeveloper Windows 8.1
[Em Desenvolvimento] Battles of Worlds
Loop Event Onclick
[RESOLVIDO] Playerprefs
Como percorrer por rampas sem deslizar o Rigdbody?
Ajuda em atacar
Avaliem meu APK!!!!!
Fazer a IA flanquear
fazer inimigo se movimentar para direita e esquerda jogo de plataforma
hospedagem de site gratis (link no tópico)
Solução Unity 2019 erro Text Mesh Pro
[TUTORIAL] Cena inicial de CARREGAMENTO, creditos, logo, etc [UNITY 5]
Problema com boxes colliders
Rotação
The Stack
Instalar nova versão Unity 2019
[RESOLVIDO] Alguém conhece um programa bom e simples para criar modelos 3d?
Flamehead MMORPG Indie
Comunicação entre scripts
[RESOLVIDO] Teletransporte pelo cenario Unity2D
Dúvida WEBGL
[RESOLVIDO] Problema com sistema de controle de volume.
Meu Jogo ta Travando - Quiz Unity 2D
[RESOLVIDO] Unity - Como Saber Se Botão Foi Clicado?
Quiz 2D Unity - Como esperar segundos para ir pra próxima pergunta????
Aplicativo!?!
[DUVIDA] ADS Em app WPF.NET ?
[RESOLVIDO] Renderização de Sprite renderer
[TUTORIAL] Arma tipo a do call of duty
Animação customizada com "Exit Time"
Personagem No Unity problema com colisão Como Resolver
Inimigo seguir só quando olharmos para ele.
Meu novo game
The scripts needs to derive from monobehaviour
[RESOLVIDO] Erro - animações do Mixamo na Unity
[TUTORIAL] Singleton, A melhor forma de acessar a classe!
[Asset] Repositório + Assets
Executar animação via script
COMO MOVER UM OBJETO OU PERSONAGEM
[RESOLVIDO] GameObject que não Ativa
[TUTORIAL] Compilar para Android
Travar movimentação/rotação de um child.
[TUTORIAL] Android - Sistema de controle third person shooter, Joystick + Swipe camera
[RESOLVIDO] Unity 2018.2.14f1(64bit) sem audio
Como alterar propriedades em uma clip de animação mantendo o padrão em outros clips?
GIRAR EM TORNO DE ACORDO COM AS TECLAS
[DUVIDA] Como permitir que o usuario envie uma imagem e a ajeite
Mobile Camera
Collider labirinto 2D
Efeito de "Super velocidade"
girar eixo de movimento
[RESOLVIDO] List Index error
Jogo Da Velha
Projeto de lei quer criminalizar criadores de jogos violentos ?!?!?!?
[TUTORIAL] Salvar dados com playerprefs facilmente.
Conta android para desenvolvedor
[Asset] Jogo em plataforma 2D para aprendizado
Sistema de Plataforma com Rotas controlado por Touch
DIVULGAÇÃO
[RESOLVIDO] Como saber se o jogador esta vendo um certo objeto?
derrubar arvore em jogo 2d
[RESOLVIDO] Como resetar a cena em que o player estar
ESTOU COM UM PROBLEMA EM UM SCRIPT
Bool ficar verdadeira no multiplayer em script de inimigo? (Unet)
Game Mobile
[RESOLVIDO] Não consigo deixar meus áudios em 3D...
Pressionar Botão por um determinado tempo
Histórico de Input
como limitar o zoom mínimo e máximo no lean touch
Como que faço para rotacionar um objeto na posição do player como o cenario
[RESOLVIDO] Bug textura, SketchUp para Unity 3d
Unity - Excluir Ads Criado.
[RESOLVIDO] Lanterna Sumindo
Setar a posição do mouse
Medidores interativos como fazer na Unity
[RESOLVIDO] Unity - Adicionar Espaço Em Array
Pack de áudio/ efeitos sonoros gratuitos.
Game Engine
[TUTORIAL] Sistema simples para VOLTAR NO TEMPO, Unity 3D
Point Light com qualidade horrivel, o que pode ser?
PC, Mobile ou ambos?
Efeito Glowing
[RESOLVIDO] box collider conflito
[RESOLVIDO] Blender - Mancha Preta
[TUTORIAL] Unity 5- Sistema de PLATAFORMAS COM ROTAS
ESTOU COM UM PROBLEMA DE ANIMAÇÃO!!!
Câmera Orbital Modificada
[RESOLVIDO] Uma duvida sobre colliders 2d
Unity - Inspetor Personalizado
Software para testar AR no PC
Salvar Cores com Json
Objeto que pula
[RESOLVIDO] limite de posicionamento
Enemy grid movement
[RESOLVIDO] AJUDA COM SCRIPT
TANK DEFENDER II
[TUTORIAL] Sistema simples de Cutscenes
Hoje à(s) 7:10 pm
Hoje à(s) 7:08 pm
Hoje à(s) 6:49 am
Ontem à(s) 9:41 pm
Ontem à(s) 7:25 pm
Sab Abr 20, 2019 3:15 pm
Sab Abr 20, 2019 1:57 pm
Sab Abr 20, 2019 1:28 pm
Sab Abr 20, 2019 2:41 am
Sex Abr 19, 2019 9:19 pm
Sex Abr 19, 2019 6:40 pm
Sex Abr 19, 2019 6:23 pm
Sex Abr 19, 2019 2:32 am
Qui Abr 18, 2019 9:35 pm
Qui Abr 18, 2019 8:43 pm
Qui Abr 18, 2019 8:39 pm
Qui Abr 18, 2019 8:30 pm
Qui Abr 18, 2019 8:25 pm
Qui Abr 18, 2019 1:04 pm
Qui Abr 18, 2019 3:25 am
Qua Abr 17, 2019 8:26 pm
Qua Abr 17, 2019 8:16 pm
Seg Abr 15, 2019 11:27 pm
Seg Abr 15, 2019 11:24 pm
Seg Abr 15, 2019 9:53 pm
Seg Abr 15, 2019 7:15 pm
Seg Abr 15, 2019 12:29 pm
Dom Abr 14, 2019 11:26 am
Dom Abr 14, 2019 11:23 am
Dom Abr 14, 2019 1:42 am
Sab Abr 13, 2019 2:33 pm
Sab Abr 13, 2019 1:36 pm
Sex Abr 12, 2019 8:44 pm
Qui Abr 11, 2019 11:18 pm
Qui Abr 11, 2019 12:50 pm
Qua Abr 10, 2019 10:59 am
Qua Abr 10, 2019 1:01 am
Ter Abr 09, 2019 7:31 pm
Ter Abr 09, 2019 6:39 pm
Ter Abr 09, 2019 3:47 pm
Seg Abr 08, 2019 10:12 pm
Seg Abr 08, 2019 8:59 pm
Dom Abr 07, 2019 8:55 pm
Dom Abr 07, 2019 8:01 pm
Dom Abr 07, 2019 3:05 pm
Sab Abr 06, 2019 11:52 am
Sab Abr 06, 2019 12:12 am
Sex Abr 05, 2019 10:46 pm
Sex Abr 05, 2019 9:38 pm
Sex Abr 05, 2019 9:36 pm
Sex Abr 05, 2019 9:31 pm
Sex Abr 05, 2019 9:27 pm
Qui Abr 04, 2019 9:18 pm
Qui Abr 04, 2019 8:21 pm
Qui Abr 04, 2019 4:37 pm
Qui Abr 04, 2019 2:48 pm
Qua Abr 03, 2019 7:09 pm
Qua Abr 03, 2019 4:37 pm
Qua Abr 03, 2019 4:32 pm
Ter Abr 02, 2019 11:18 pm
Ter Abr 02, 2019 7:32 pm
Ter Abr 02, 2019 6:18 pm
Ter Abr 02, 2019 4:50 pm
Ter Abr 02, 2019 4:19 am
Seg Abr 01, 2019 9:22 pm
Seg Abr 01, 2019 9:19 pm
Seg Abr 01, 2019 9:15 pm
Seg Abr 01, 2019 8:58 pm
Seg Abr 01, 2019 6:12 pm
Seg Abr 01, 2019 4:00 pm
Seg Abr 01, 2019 3:35 pm
Seg Abr 01, 2019 1:23 pm
Seg Abr 01, 2019 1:09 am
Dom Mar 31, 2019 6:07 pm
Dom Mar 31, 2019 11:26 am
Sab Mar 30, 2019 9:03 pm
Sab Mar 30, 2019 6:09 pm
Sab Mar 30, 2019 5:50 pm
Sab Mar 30, 2019 4:56 pm
Sab Mar 30, 2019 8:22 am
Sab Mar 30, 2019 8:21 am
Sex Mar 29, 2019 11:56 pm
Sex Mar 29, 2019 4:31 pm
Sex Mar 29, 2019 3:57 pm
Sex Mar 29, 2019 3:39 pm
Sex Mar 29, 2019 12:29 pm
Sex Mar 29, 2019 4:54 am
Sex Mar 29, 2019 4:50 am
Sex Mar 29, 2019 4:41 am
Qui Mar 28, 2019 4:26 pm
Qui Mar 28, 2019 1:39 pm
Qui Mar 28, 2019 8:05 am
Qui Mar 28, 2019 8:04 am
Ter Mar 26, 2019 11:02 pm
Ter Mar 26, 2019 5:41 pm
Ter Mar 26, 2019 2:19 pm
Ter Mar 26, 2019 12:53 pm
Seg Mar 25, 2019 11:52 pm
Seg Mar 25, 2019 11:22 pm
glauco
glauco
marlon33
Dom3000
Magnatah
Magnatah
LucasRangel
UesleiUsl
MarcosSchultz
916anderson
MarcosSchultz
Magnatah
MarcosSchultz
marlon33
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
glauco
ffabim
Callyde Jr
mathhBR
numb123
kraulim
MarcosSchultz
Magnatah
Akuma97
Magnatah
BRGC
ffabim
diegopds
NKKF
dstaroski
MarceloYBP
guimaraf
everton0101
Master3353
Magnatah
augustobrito
NotoriousDev
DEQUISTER1994
Fernando Andrey
fabricadegame
NotoriousDev
iToddy
marciosilva
LucasRangel
wagnercaragua
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
wagnercaragua
NotoriousDev
Unidade3d5
Tegh
rafaelllsd
JohnRambo
NKKF
edvanmelo
niao
NKKF
Tegh
niao
fecirineu
fecirineu
fecirineu
BrazaTattoo
NKKF
NKKF
Chilinger
emerson vitor
BrazaTattoo
Magnatah
Guinho3p
luiz12345
Magnatah
Magnatah
Zack2
Chilinger
Chilinger
MarcosSchultz
Magnatah
michelly
eduardonog30
Magnatah
MarcosSchultz
MarcosSchultz
MarcosSchultz
mathhBR
Magnatah
Chilinger
Chilinger
luiz12345
Span
Unidade3d5
Diego Felix
wagnercaragua
AnderGames

[TUTORIAL] Banco de dados || MySQL

Ir em baixo

TUTORIAL [TUTORIAL] Banco de dados || MySQL

Mensagem por RenanMSV em Sex Jul 01, 2016 5:15 pm

[TUTORIAL] Banco de dados || MySQL Mysql-host-is-not-allowed

Após o tutorial de SQLite que eu postei a algum tempo atrás, venho trazer agora o tutorial de banco de dados MySQL.

O banco de dados MySQL é um banco de dados online, que fica em um servidor. Portanto você precisará ter um host já contratado e ativo.
Você pode contratar um serviço pago ou um gratuito neste site: http://www.freesqldatabase.com/. Ou varios outros gratuitos na internet. Este foi só um exemplo.

Independente de qual você escolher lhe será dado um hostname, um nome de usuario, uma senha e talvez uma porta. E será com essas informações que você vai poder utilizar seu banco de dados em seus jogos.

Muito bem, ja tenho tudo isso. Vamos começar? Vamos.

Precisamos baixar o MySQL Connector neste site: http://dev.mysql.com/get/Downloads/Connector-Net/mysql-connector-net-5.0.9-noinstall.zip

Abra o zip e extraia o MySql.Data.dll que se encontra na pasta bin.

Crie uma pasta em seu Unity com o nome de Plugins e coloque a DLL lá.

Abra a pasta C:\Program Files\Unity\Editor\Data\Mono\lib\mono\2.0 ( depende de onde você instalou seu Unity ) e copie os arquivos I18N.dll e I18N.West.dll para a pasta Plugins do seu projeto do Unity.

Agora você TERA QUE IR em Build Settings > Player Settings > Optimization e selecionar .NET 2.0

Caso você tenha escolhido usar o banco de dados do freesqldatabase.com basta voce logar aqui http://www.phpmyadmin.co/ para ter acesso a uma interface de administração de seu banco de dados.
Caso você escolha outro provedor do serviço verifique que o método dele é diferente.
Mas todos provedores vão levar você ao PHP My Admin.

Muito, bem agora vamos aos codigos.

Dentro do PHP My Admin clique em seu banco de dados, clique em SQL e cole este código aqui:

Código:
CREATE TABLE IF NOT EXISTS `login_users` (
  `id_user` int(11) NOT NULL AUTO_INCREMENT,
  `name_user` varchar(255) NOT NULL,
  `pass_user` varchar(255) NOT NULL,
  `email_user` varchar(255) NOT NULL,
  PRIMARY KEY (`id_user`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=3 ;


INSERT INTO `login_users` (`id_user`, `name_user`, `pass_user`, `email_user`) VALUES
(1, 'Usuario 1', 'senha123', 'asflasjf.com'),
(2, 'Usuario 2', 'senha321', 'asfhas@.com');

Clique em executar.

Com este código criamos uma tabela simples que guardará os usuarios de nosso jogo. Guardaremos nome, senha e email. Um ID será automaticamente criado para este usuario. Iremos nos basear sempre pelo ID do usuario para fazermos nossas requisições ao banco de dados.

Bem, feito isto podemos ir para o Unity.

Vejam aqui a string source usada para o MySQL se conectar: https://www.connectionstrings.com/mysql/

Crie um script C#:

Código:

using UnityEngine;
using System.Collections;
using MySql.Data.MySqlClient; // importamos a dll
using UnityEngine.UI;

public class MyDataTut : MonoBehaviour {
   public string Host; // host do seu banco de dados
   public string Pass;   // senha do seu banco de dados
   public string User;   // nome de usuario do seu banco de dados
   public string DataBaseName; // nome do seu banco de dados
   public string LoginTableName; // nome da tabela do seu banco de dados.
   private MySqlConnection connection; // declaramos a conexao que iremos utilizar. podemos utilizar centenas de conexoes juntas
   private string source;

   void Start () {
      source = "Server=" + Host + ";Database= " + DataBaseName + ";Uid=" + User + ";Pwd="+ Pass +";"; // Estamos criando a source string para conexoes MySQL
      if (ConectarBanco(source)){ // perguntamos ao jogo se ele pode conectar
         ListarTodosOsDados(connection);// pedimos para ele listar todos os dados existentes no banco
      }
   }
   bool ConectarBanco(string _source){
      print ("Criando conexao"); // Printamos que estamos criando a conexão
      connection = new MySqlConnection (_source); // criando a conexao
      print ("Abrindo conexao"); // Printamos que estamos abrindo a conexão
      try { // tente
         connection.Open (); // abrir a conexao
         print ("Conexao aberta");
         return true; // retorna verdadeiro
      }catch(System.Exception e){ // se não conseguir
         Debug.LogError (e); // mostre o erro no console
         return false; // e retorne falso
      }
   }
   void ListarTodosOsDados(MySqlConnection _conn){
      MySqlCommand cmd = _conn.CreateCommand(); // criamos um comando vazio na conexao passada
      cmd.CommandText = "SELECT * FROM " + LoginTableName; // colocamos uma requisicao sql no comando pertencente a esta conexao
      MySqlDataReader dados = cmd.ExecuteReader (); // executamos este comando na conexao passada
      while (dados.Read ()) { // enquanto houver dados
         print("Dados: " + "ID: " + dados ["id_user"] + ". UserName: " + dados ["name_user"] + ". Senha: " + dados ["pass_user"] + ". Email: " + dados ["email_user"]  + "\n"); // Mostramos estes dados
      }
      dados.Close(); // por fim fechamos a leitura e o comando
      dados = null;
      cmd.Dispose();
      cmd = null;
   }
   void OnApplicationQuit (){ // Se a aplicação for fechada
      connection.Close (); // Fechamos a conexao
      connection = null;
      print ("Database Fechado"); // Printamos que foi fechado
   }
}

Para se pegar os dados utilizamos dados[nome do campo no banco de dados]. Exemplo:

Código:

string PegarSenhaDoUsuarioPeloID(MySqlConnection _conn,int id){
   string retSt;
   MySqlCommand cmd = _conn.CreateCommand(); // criamos um comando vazio na conexao passada
   cmd.CommandText = "SELECT pass_user FROM " + LoginTableName + "where id_user =" + id; // pegamos a senha do usuario que tiver o id passado
   MySqlDataReader dados = cmd.ExecuteReader (); // executamos este comando na conexao passada
   if (dados.Read ()) { // como existe apenas 1 usuario por id não precisamos do while.
      print("Senha: " + dados[pass_user]); // Mostramos esta senha
      retSt = dados[pass_user]);
   }
   dados.Close(); // por fim fechamos a leitura e o comando
   dados = null;
   cmd.Dispose();
   cmd = null;
   return retSt;
}

No exemplo criamos um simples método que pode ser usado para saber a senha do usuario a partir de seu id.
E retornamos esta senha. Iriamos utilizar assim:

Código:

print(PegarSenhaDoUsuarioPeloID(connection,2)); // irá printar a senha
string senha = PegarSenhaDoUsuarioPeloID(connection,this.id); // irá atribuir a senha

Demais explicações estão no script.

Agora o resultado:

Console:
[TUTORIAL] Banco de dados || MySQL 33epilf

PHP My Admin:
[TUTORIAL] Banco de dados || MySQL Qn8jsk

Qualquer duvida mandem abaixo.

Até!


Última edição por RenanMSV em Sex Jul 01, 2016 8:52 pm, editado 1 vez(es) (Razão : Erro corrigido. Falha ao buscar por DLL.)
RenanMSV
RenanMSV
Instrutor

Masculino PONTOS : 2437
REPUTAÇÃO : 346
Áreas de atuação : Programação em C#, PHP. SQL, JavaScript (Web)
Respeito as regras : [TUTORIAL] Banco de dados || MySQL Aad8pUi

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Banco de dados || MySQL

Mensagem por Chilinger em Sex Jul 01, 2016 6:48 pm

Irmao eu sei fazer igual o seu mas descobri pouco tempo depois que fazer em php e mas rapido

Chilinger
MembroAvançado

Masculino PONTOS : 1982
REPUTAÇÃO : 34
Idade : 25
Respeito as regras : [TUTORIAL] Banco de dados || MySQL WvDYdlf

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Banco de dados || MySQL

Mensagem por Guilherme_cj852 em Sex Jul 01, 2016 8:29 pm

Na unity deu esse erro no script
Código:
Unhandled Exception: Mono.CSharp.InternalErrorException: Assets/Scripts/MyDataTut.cs(6,14): MyDataTut ---> Mono.CSharp.InternalErrorException: Assets/Scripts/MyDataTut.cs(12,33): MyDataTut.connection ---> System.IO.FileNotFoundException: Could not load file or assembly 'System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies.
Guilherme_cj852
Guilherme_cj852
MembroAvançado

Masculino PONTOS : 1796
REPUTAÇÃO : 128
Idade : 18
Áreas de atuação : Programador C#
Designer
Iniciante em PHP
Respeito as regras : [TUTORIAL] Banco de dados || MySQL WvDYdlf

Ver perfil do usuário http://ugames-studio.weebly.com/

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Banco de dados || MySQL

Mensagem por RenanMSV em Sex Jul 01, 2016 8:39 pm

Não é erro no banco de dados. Ocultei as informações para evitar de gente entrando.

Tente: Ir em Build Settings > Player Settings > Optimization e selecione .NET 2.0


Última edição por RenanMSV em Sex Jul 01, 2016 8:53 pm, editado 1 vez(es)
RenanMSV
RenanMSV
Instrutor

Masculino PONTOS : 2437
REPUTAÇÃO : 346
Áreas de atuação : Programação em C#, PHP. SQL, JavaScript (Web)
Respeito as regras : [TUTORIAL] Banco de dados || MySQL Aad8pUi

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Banco de dados || MySQL

Mensagem por Guilherme_cj852 em Sex Jul 01, 2016 8:47 pm

@RenanMSV escreveu:Não é erro no banco de dados. Ocultei as informações para evitar de gente entrando.

Tente:

Ir em Build Settings > Player Settings > Optimization e selecione .NET 2.0
Ou ir na pasta  C:\Program Files\Unity\Editor\Data\Mono\lib\mono\2.0 e copiar o arquivo System.Data.dll para a pasta Plugins de seu projeto.

Volte aqui e diga qual funcionou, ou se não funcionou.
Mudei para .NET 2.0 e funcionou, vlw
Guilherme_cj852
Guilherme_cj852
MembroAvançado

Masculino PONTOS : 1796
REPUTAÇÃO : 128
Idade : 18
Áreas de atuação : Programador C#
Designer
Iniciante em PHP
Respeito as regras : [TUTORIAL] Banco de dados || MySQL WvDYdlf

Ver perfil do usuário http://ugames-studio.weebly.com/

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Banco de dados || MySQL

Mensagem por RenanMSV em Sex Jul 01, 2016 8:50 pm

Vi agora, esqueci de mencionar que precisa alterar isso. Ai as dll não precisam serem importadas.
Vou colocar isto no post. Obrigado.
RenanMSV
RenanMSV
Instrutor

Masculino PONTOS : 2437
REPUTAÇÃO : 346
Áreas de atuação : Programação em C#, PHP. SQL, JavaScript (Web)
Respeito as regras : [TUTORIAL] Banco de dados || MySQL Aad8pUi

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Banco de dados || MySQL

Mensagem por rafaelllsd em Sex Jul 01, 2016 8:53 pm

Que massa, esse assunto é novo para mim mais acho bem legal, muito bom.
rafaelllsd
rafaelllsd
ProgramadorMaster

Masculino PONTOS : 3080
REPUTAÇÃO : 450
Idade : 18
Áreas de atuação : Unity, Audacity, Blender, Gimp, C#, JS, HTML5.

Respeito as regras : [TUTORIAL] Banco de dados || MySQL Aad8pUi

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Banco de dados || MySQL

Mensagem por Chilinger em Qui Set 22, 2016 10:33 am

Renan fui a tras da resposta certa e vi que eu tinha falado algo erro pois se nao for c# a unity tem que buscar uma biblioteca fora entao demora mas logo banco com c# e mas rapido.

No meu nao estou conseguindo cadastrar e logar ao msm tempo com c# mysql so com php.

Chilinger
MembroAvançado

Masculino PONTOS : 1982
REPUTAÇÃO : 34
Idade : 25
Respeito as regras : [TUTORIAL] Banco de dados || MySQL WvDYdlf

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Banco de dados || MySQL

Mensagem por Deiverson em Seg Dez 05, 2016 3:23 pm

Tenho uma preocupação relacionada na comunicação com o banco de dados remoto, podemos melhorar isso aplicando uma criptografia para que os dados não seja interceptados facilmente durante a comunicação?

Teria como fazer essa comunicação criptografada usando alguma API do Unity? Usar um HTTPS (até um certificado digital não valido) ou fazer essa consulta no banco via Webservice?

Deiverson
Iniciante
Iniciante

PONTOS : 1474
REPUTAÇÃO : 3
Respeito as regras : [TUTORIAL] Banco de dados || MySQL WvDYdlf

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Banco de dados || MySQL

Mensagem por artplayer em Seg Dez 05, 2016 5:19 pm

@Deiverson escreveu:Tenho uma preocupação relacionada na comunicação com o banco de dados remoto, podemos melhorar isso aplicando uma criptografia para que os dados não seja interceptados facilmente durante a comunicação?

Teria como fazer essa comunicação criptografada usando alguma API do Unity? Usar um HTTPS (até um certificado digital não valido) ou fazer essa consulta no banco via Webservice?

Por isso o ideal é você deixar que o servidor manipule o banco de dados e não a Unity em si. Você envia os dados via WWWforms pra uma página php com apenas os parâmetros definidos e deixa que o php faz a consulta retornando apenas o desejado.
Eu só trabalho com consultas desta forma, e só em jogos online, daí restrinjo o meu apache a aceitar conexões somente do servidor, impedindo que os forms sejam manipulados por usuários mau intencionados.
artplayer
artplayer
ProgramadorMaster

Masculino PONTOS : 1795
REPUTAÇÃO : 283
Idade : 34
Respeito as regras : [TUTORIAL] Banco de dados || MySQL Aad8pUi

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Banco de dados || MySQL

Mensagem por Deiverson em Seg Dez 05, 2016 6:03 pm

Sim, nesse caso você faz somente consultas, correto?

No caso da necessidade de sincronização de dados do cliente (podendo ser mobile ou pc) para servidor MySQL, qual seria uma solução do ponto de vista de uma arquitetura mais simples, para você conseguir inserir os dados remotos no banco? Webservice usando o PHP para inserir + algum outro mecanismo de criptografia?

Com o Apache HTTPD já da para garantir uma proteção maior evitando SQL Injection.

Minha preocupação seria na manipulação de dados envenenandos no POST, por que eu teria que sincronizar incluindo informações no banco de dados do servidor (não é Sql Injection e sim o jogador alterar por exemplo Level do personagem, que esta em 2, para 9999, alterar valores dos campos submetidos no form). Vou dar uma estudada nesse envio os dados via WWWforms, talvez já resolva.

Acho que pode depender muito mais da forma que está sendo projetado essa sincronização de dados, tanto de consumo do webservice como envio, no caso do envio que é mais complicado. Não sei se seria possivel ou bom encapsular os dados com criptografia um xml ou json (tambem não sei se o Unity suporta isso) e submeteria para o webservice descriptografar e fazer as atualizações no banco remoto. Talvez por HTTPS resolva essa questão de sincronização com segurança sem maiores problemas, vou dar uma verificada depois.


Última edição por Deiverson em Seg Dez 05, 2016 6:13 pm, editado 5 vez(es) (Razão : Adicionando mais informações sobre sincronização...)

Deiverson
Iniciante
Iniciante

PONTOS : 1474
REPUTAÇÃO : 3
Respeito as regras : [TUTORIAL] Banco de dados || MySQL WvDYdlf

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Banco de dados || MySQL

Mensagem por artplayer em Seg Dez 05, 2016 6:48 pm

@Deiverson escreveu:Sim, nesse caso você faz somente consultas, correto?

No caso da necessidade de sincronização de dados do cliente (podendo ser mobile ou pc) para servidor MySQL, qual seria uma solução do ponto de vista de uma arquitetura mais simples, para você conseguir inserir os dados remotos no banco? Webservice usando o PHP para inserir + algum outro mecanismo de criptografia?

Com o Apache HTTPD já da para garantir uma proteção maior evitando SQL Injection.

Minha preocupação seria na manipulação de dados envenenandos no POST, por que eu teria que sincronizar incluindo informações no banco de dados do servidor (não é Sql Injection e sim o jogador alterar por exemplo Level do personagem, que esta em 2, para 9999, alterar valores dos campos submetidos no form). Vou dar uma estudada nesse envio os dados via WWWforms, talvez já resolva.

Acho que pode depender muito mais da forma que está sendo projetado essa sincronização de dados, tanto de consumo do webservice como envio, no caso do envio que é mais complicado. Não sei se seria possivel ou bom encapsular os dados com criptografia um xml ou json (tambem não sei se o Unity suporta isso) e submeteria para o webservice descriptografar e fazer as atualizações no banco remoto. Talvez por HTTPS resolva essa questão de sincronização com segurança sem maiores problemas, vou dar uma verificada depois.

Foi uma das minhas primeiras preocupações quando comecei a usar WWWForms. Também sou um pouco paranoico com segurança, até contestei isso no fórum da Unity. Sempre fiquei me perguntando uma maneira de evitar que alguém manipule os dados do form que está sendo enviado. 
No final das contas, eu pensei em Ssh. Como eu disse, só preciso fazer isso em jogos online, oque é bem mais fácil de manter a segurança.


EDIT: Uma maneira eficaz de proteger os dados seria usar uma criptografia AES. Uma vez que ela usa uma chave secreta pra criptografar / descriptografar os dados, a única maneira de um hack conseguir a sua SecretKey seria descompilando o seu código. E, pra reforçar um pouco a segurança do código você poderia usar algum inibidor / ofuscador.


Última edição por artplayer em Seg Dez 05, 2016 7:27 pm, editado 3 vez(es) (Razão : Sugestão de criptografia AES.)
artplayer
artplayer
ProgramadorMaster

Masculino PONTOS : 1795
REPUTAÇÃO : 283
Idade : 34
Respeito as regras : [TUTORIAL] Banco de dados || MySQL Aad8pUi

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Banco de dados || MySQL

Mensagem por NyanHeavyBR em Sex Abr 14, 2017 12:32 pm

No caso eu tenho um sistema de noticias que seria uma tabela com 3 campos: titulo da noticia, descrição e data, teria como usar esse sistema só para consultar esses dados e mostrar na Unity?
NyanHeavyBR
NyanHeavyBR
MembroAvançado

PONTOS : 1252
REPUTAÇÃO : 32
Respeito as regras : [TUTORIAL] Banco de dados || MySQL WvDYdlf

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Banco de dados || MySQL

Mensagem por MarcosSchultz em Sex Abr 14, 2017 7:19 pm

yep
MarcosSchultz
MarcosSchultz
Administrador

Masculino PONTOS : 61672
REPUTAÇÃO : 2213
Idade : 22
Áreas de atuação : Administrador do fórum
Respeito as regras : [TUTORIAL] Banco de dados || MySQL Aad8pUi

Ver perfil do usuário http://www.schultzgames.com

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Banco de dados || MySQL

Mensagem por NyanHeavyBR em Dom Abr 16, 2017 3:49 am

No caso do tutorial dele, ele insere as informações, eu quero é apenas verificar elas no banco de dados. como poderia fazer isso?
NyanHeavyBR
NyanHeavyBR
MembroAvançado

PONTOS : 1252
REPUTAÇÃO : 32
Respeito as regras : [TUTORIAL] Banco de dados || MySQL WvDYdlf

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Banco de dados || MySQL

Mensagem por MarcosSchultz em Qua Abr 19, 2017 1:53 am

verificar no banco de dados? Assim como da pra setar valores da pra consultar ué O.o

Qual exatamente o problema?
MarcosSchultz
MarcosSchultz
Administrador

Masculino PONTOS : 61672
REPUTAÇÃO : 2213
Idade : 22
Áreas de atuação : Administrador do fórum
Respeito as regras : [TUTORIAL] Banco de dados || MySQL Aad8pUi

Ver perfil do usuário http://www.schultzgames.com

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Banco de dados || MySQL

Mensagem por NyanHeavyBR em Dom Abr 23, 2017 2:07 am

oh, não tinha reparado em uma parte do script que faria tudo dar certo! obrigado
NyanHeavyBR
NyanHeavyBR
MembroAvançado

PONTOS : 1252
REPUTAÇÃO : 32
Respeito as regras : [TUTORIAL] Banco de dados || MySQL WvDYdlf

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Banco de dados || MySQL

Mensagem por fecirineu em Sex Maio 05, 2017 8:57 am

@MarcosSchultz escreveu:verificar no banco de dados? Assim como da pra setar valores da pra consultar ué O.o

Qual exatamente o problema?
caraca tudo que eu queria muito obrigado Amigo.. Funcionou perfeitamente... você é 10

Disponibilizando o Servidor Mysql Grautito que eu usei caso a galera queira testar::::

http://www.freesqldatabase.com/

Ele possui acesso externo. Smile
Funcionou perfeitamente .. vlw
fecirineu
fecirineu
ProgramadorMaster

Masculino PONTOS : 1521
REPUTAÇÃO : 136
Áreas de atuação : Programação C#,VB,VBNET,MySQL,HTML,CSS,PHP.

Respeito as regras : [TUTORIAL] Banco de dados || MySQL Aad8pUi

Ver perfil do usuário http://gamesbr.cf/

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Banco de dados || MySQL

Mensagem por Pika em Dom Maio 07, 2017 10:05 pm

No meu projeto deu o erro abaixo:
Assets/Database/MyDataTut.cs(12,10): error CS0012: The type `System.Data.Common.DbConnection' is defined in an assembly that is not referenced. Consider adding a reference to assembly `System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'.

Me ajuda porfavor?

Pika
Iniciante
Iniciante

PONTOS : 738
REPUTAÇÃO : 0
Respeito as regras : [TUTORIAL] Banco de dados || MySQL WvDYdlf

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Banco de dados || MySQL

Mensagem por fecirineu em Dom Maio 07, 2017 11:28 pm

@Pika escreveu:No meu projeto deu o erro abaixo:
Assets/Database/MyDataTut.cs(12,10): error CS0012: The type `System.Data.Common.DbConnection' is defined in an assembly that is not referenced. Consider adding a reference to assembly `System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'.

Me ajuda porfavor?

voce mudou no player setting para Versao  net 2.0?
fecirineu
fecirineu
ProgramadorMaster

Masculino PONTOS : 1521
REPUTAÇÃO : 136
Áreas de atuação : Programação C#,VB,VBNET,MySQL,HTML,CSS,PHP.

Respeito as regras : [TUTORIAL] Banco de dados || MySQL Aad8pUi

Ver perfil do usuário http://gamesbr.cf/

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Banco de dados || MySQL

Mensagem por marcos4503 em Dom Maio 07, 2017 11:34 pm

@Pika escreveu:No meu projeto deu o erro abaixo:
Assets/Database/MyDataTut.cs(12,10): error CS0012: The type `System.Data.Common.DbConnection' is defined in an assembly that is not referenced. Consider adding a reference to assembly `System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'.

Me ajuda porfavor?

Amigo, se você ta usando o Unity 5.5 ou superior, você vai ter que ir la na sua pasta do unity, onde voce pegou a DLL I81N, e vai pegar a DLL "System.Data.dll" e vai copiar pro seu projeto! Feito isso, é sucesso! flws
marcos4503
marcos4503
Instrutor

Masculino PONTOS : 3004
REPUTAÇÃO : 555
Idade : 20
Áreas de atuação :
Programação, Mobile, Web e Design.

Veja meus assets para Unity!
https://windsoft.xyz/mtassets


Respeito as regras : [TUTORIAL] Banco de dados || MySQL Aad8pUi

Ver perfil do usuário http://windsoft.xyz

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Banco de dados || MySQL

Mensagem por Callyde Jr em Qui Maio 11, 2017 5:40 am

Crie uma pasta em seu Unity com o nome de Plugins
Coloque as Dll ( I18N.dll e I18N.West.dll e essas tambem System.Data.dll)
e no player setting para Versao  net 2.0
pronto vai funcionar.
Callyde Jr
Callyde Jr
Programador

Masculino PONTOS : 2924
REPUTAÇÃO : 388
Idade : 40
Áreas de atuação : Iniciante em modelagem Blender,ScketSHUP
Progamador
Ideialista

Meu Canal
https://www.youtube.com/ch
Respeito as regras : [TUTORIAL] Banco de dados || MySQL WvDYdlf

Ver perfil do usuário http://unnygames.000webhostapp.com/

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Banco de dados || MySQL

Mensagem por NKKF em Qui Mar 15, 2018 4:34 pm

UP NESSE TÓPICO DELÍCIA, ISSO NÃO PODE MORRER NUNCA  Cheers Cheers Cheers Cheers
NKKF
NKKF
ProgramadorMaster

Masculino PONTOS : 2360
REPUTAÇÃO : 452
Idade : 14
Áreas de atuação : Error 404 Not Found.
Respeito as regras : [TUTORIAL] Banco de dados || MySQL Aad8pUi

Ver perfil do usuário http://www.projetounity.esy.es

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Banco de dados || MySQL

Mensagem por ruanzikaad em Qui Mar 15, 2018 4:39 pm

Souris escreveu:UP NESSE TÓPICO DELÍCIA, ISSO NÃO PODE MORRER NUNCA  Cheers Cheers Cheers Cheers
Muito bom

ruanzikaad
Avançado
Avançado

Masculino PONTOS : 1075
REPUTAÇÃO : 40
Idade : 19
Respeito as regras : [TUTORIAL] Banco de dados || MySQL WvDYdlf

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Banco de dados || MySQL

Mensagem por ruanzikaad em Qui Mar 15, 2018 5:24 pm

Souris escreveu:UP NESSE TÓPICO DELÍCIA, ISSO NÃO PODE MORRER NUNCA  Cheers Cheers Cheers Cheers
Você sabe que dá para criar um banco de dados direto no c# né ? sem usar php;

ruanzikaad
Avançado
Avançado

Masculino PONTOS : 1075
REPUTAÇÃO : 40
Idade : 19
Respeito as regras : [TUTORIAL] Banco de dados || MySQL WvDYdlf

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Banco de dados || MySQL

Mensagem por NKKF em Qui Mar 15, 2018 5:31 pm

Sim, porém tem defeitos nisto.
NKKF
NKKF
ProgramadorMaster

Masculino PONTOS : 2360
REPUTAÇÃO : 452
Idade : 14
Áreas de atuação : Error 404 Not Found.
Respeito as regras : [TUTORIAL] Banco de dados || MySQL Aad8pUi

Ver perfil do usuário http://www.projetounity.esy.es

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Banco de dados || MySQL

Mensagem por kaique2346 em Ter Jul 10, 2018 1:09 pm

Galera estou recebendo o seguinte erro ao no console do unity

System.Collections.Generic.KeyNotFoundException: The given key was not present in the dictionary.
  at System.Collections.Generic.Dictionary`2[System.String,MySql.Data.MySqlClient.CharacterSet].get_Item (System.String key) [0x000a2] in


Quando vou ate o código diz que o erro refere a esta parte
Código:
Debug.LogError(e); // mostre o erro no console

mais eu não sei o que pode esta causando este erro alguém pode ajudar?

kaique2346
Iniciante
Iniciante

PONTOS : 639
REPUTAÇÃO : 0
Respeito as regras : [TUTORIAL] Banco de dados || MySQL WvDYdlf

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Banco de dados || MySQL

Mensagem por BrunoHenRod em Qua Out 03, 2018 2:15 pm

Boa tarde a todos!! 
Tenho uma duvida sobre esse tópico, tenho uma aplicação com Unity e MySql e no Pc roda normalmente abrindo o banco e consultando ( no editor do Unity ), mas no android ele cai na exceção e não conecta, desculpe se a pergunta é muito obvia mas sou iniciante em unity . Na pasta assets tenho o system.data.dll e o mysql.data.dll   , é necessario algum plugin?

Agradeço a atenção de todos !!!!!

BrunoHenRod
Iniciante
Iniciante

PONTOS : 204
REPUTAÇÃO : 1
Respeito as regras : [TUTORIAL] Banco de dados || MySQL WvDYdlf

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Banco de dados || MySQL

Mensagem por igorobm em Qua Out 03, 2018 10:50 pm

@BrunoHenRod escreveu:Boa tarde a todos!! 
Tenho uma duvida sobre esse tópico, tenho uma aplicação com Unity e MySql e no Pc roda normalmente abrindo o banco e consultando ( no editor do Unity ), mas no android ele cai na exceção e não conecta, desculpe se a pergunta é muito obvia mas sou iniciante em unity . Na pasta assets tenho o system.data.dll e o mysql.data.dll   , é necessario algum plugin?

Agradeço a atenção de todos !!!!!
Primeiro seu mysql está hospedado na internet ou está local? e como vc e iniciante, só mandar os dados para o PHP não faz pela unity não, usa o método post e o get para enviar para o php, deixa esse processamento de conexão com o php pois a unity não e muito compatível com isso. Tem outros post no fórum ensinado isso.
igorobm
igorobm
MembroAvançado

Masculino PONTOS : 733
REPUTAÇÃO : 33
Idade : 22
Áreas de atuação : Unity, programação C#.
Respeito as regras : [TUTORIAL] Banco de dados || MySQL WvDYdlf

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Banco de dados || MySQL

Mensagem por dazentt55 em Sex Nov 09, 2018 11:32 pm

Estou com problemas, coloquei tudo, iniciei a Mysql.data e na hora de criar a conexao eu tenho esse erro:
Código:
MySql.Data.MySqlClient.MySqlException: Reading from the stream has failed. ---> System.IO.IOException: Read failure ---> System.Net.Sockets.SocketException: Foi forçado o cancelamento de uma conexão existente pelo host remoto

Alguem ajuda?

dazentt55
MembroAvançado

PONTOS : 972
REPUTAÇÃO : 10
Áreas de atuação : progamador
Respeito as regras : [TUTORIAL] Banco de dados || MySQL WvDYdlf

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Banco de dados || MySQL

Mensagem por dazentt55 em Sab Nov 10, 2018 12:06 am

Resolvi o problema acima, era erro de versão do conector mysql

dazentt55
MembroAvançado

PONTOS : 972
REPUTAÇÃO : 10
Áreas de atuação : progamador
Respeito as regras : [TUTORIAL] Banco de dados || MySQL WvDYdlf

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Banco de dados || MySQL

Mensagem por dazentt55 em Sab Nov 10, 2018 2:10 am

Eu consigo fazer a conexão pelo localhost? se sim como eu faço para modificar a porta padrao?

dazentt55
MembroAvançado

PONTOS : 972
REPUTAÇÃO : 10
Áreas de atuação : progamador
Respeito as regras : [TUTORIAL] Banco de dados || MySQL WvDYdlf

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Banco de dados || MySQL

Mensagem por sabbath em Qua Nov 14, 2018 5:47 pm

Tenho uma dúvida consigo conectar um jogo mobile direto ao bando mysql, assim como se faz no pc,
sem usar as classe WWW do unity?

sabbath
MembroAvançado

PONTOS : 1292
REPUTAÇÃO : 17
Respeito as regras : [TUTORIAL] Banco de dados || MySQL WvDYdlf

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Banco de dados || MySQL

Mensagem por MarcosSchultz em Sab Nov 17, 2018 11:08 pm

@sabbath escreveu:Tenho uma dúvida consigo conectar um jogo mobile direto ao bando mysql, assim como se faz no pc,
sem usar as classe WWW do unity?

Em um banco de dados local? ou na rede?
MarcosSchultz
MarcosSchultz
Administrador

Masculino PONTOS : 61672
REPUTAÇÃO : 2213
Idade : 22
Áreas de atuação : Administrador do fórum
Respeito as regras : [TUTORIAL] Banco de dados || MySQL Aad8pUi

Ver perfil do usuário http://www.schultzgames.com

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Banco de dados || MySQL

Mensagem por sabbath em Dom Nov 18, 2018 11:20 pm

@MarcosSchultz escreveu:
@sabbath escreveu:Tenho uma dúvida consigo conectar um jogo mobile direto ao bando mysql, assim como se faz no pc,
sem usar as classe WWW do unity?

Em um banco de dados local? ou na rede?

na rede usando a apk, no unity funciona

sabbath
MembroAvançado

PONTOS : 1292
REPUTAÇÃO : 17
Respeito as regras : [TUTORIAL] Banco de dados || MySQL WvDYdlf

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Banco de dados || MySQL

Mensagem por numb123 em Seg Jan 28, 2019 4:09 pm

Função insert plxxxx
Distressed

numb123
Membro
Membro

PONTOS : 191
REPUTAÇÃO : 9
Respeito as regras : [TUTORIAL] Banco de dados || MySQL WvDYdlf

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum