Ir para conteúdo
kelvinferraz

Unica pagina de login apontando para diferentes banco de dados MySQL

Recommended Posts

@luizfabri

 

Fera, desculpa a demorar para responder.

 

Antes de mais nada, o que você fez foi um POST de resposta em um Tópico, por isso fica complicado de alguém responder, recomendo você a abrir um TÓPICO para a sua pergunta.

 

Você deve definir a linguagem de programação ou problema relacionado.

 

Mas caso você voltei aqui para ver se responderam, vou tentar lhe ajudar, mas não responda aqui, crie um Tópico só seu, okay?

 

Então, vamos lá.

 

Você tem 2 Banco de Dados para 1 único Sistema? Eu não tenho o costume de pensar em Banco De Dados para registrar funcionalidades, o que eu tenho em mente foi o que comentei com @kelvinferraz, um Banco De Dados e N tabelas para cada funcionalidade.

 

O que eu recomendo você a fazer é o seguinte, já que você tem LEVEL DE ACESSO, eu recomendo você a mudar essa forma de Gerar Bases de Dados e apenas criar 1 tabela para conteudo, então, você faz na sua programação os SELECT utilizando o LEVEL DE ACESSO de cada usuário.

 

Exemplo, tabela de Login tem ID do usuário, LOGIN do usuário, SENHA do usuário e o LEVEL de acesso do usuário.

 

Na sua programação o que tiver o tal do S,A,C você faz os SELECT sem utilizar os ID para acessar a tabela de conteudo, assim trazendo todas as informações, como você precisa que esses 3 não acessem as informações do Coworking, basta além de você colocar na tabela de informação o ID do usuário que inseriu aquele registro, colocar também o LEVEL de acesso, e no select colocar para esses três S,A,C tudo diferente na coluna Level de Acesso de COWORKING, assim não terei acesso as informações do usuário COWORKING que colocou informação na base, e para o COWORKING fica mais fácil, faz o select na base de conteudo onde o ID deve ser igual ao ID do usuário COWORKING logado e o LEVEL igual ao do COWORKING, assim eu só terei acesso as informações desse USUÁRIO que tem LEVEL DE ACESSO COWORING, assim o seu sistema não precisa ficar gerando TABELAS nem BASE DE DADOS para cada usuário, o que fica completamente inviável.

 

Bom, é isso.

 

* PRECISO DE AJUDA - Vejá meu problema aqui Problemas com SELECT

 

Espero ter ajudado.

 

Att.

Felipe Coutinho

Compartilhar este post


Link para o post
Compartilhar em outros sites
Em 30/08/2019 at 16:11, Felipe Guedes Coutinho disse:

@luizfabri

 

Fera, desculpa a demorar para responder.

 

Antes de mais nada, o que você fez foi um POST de resposta em um Tópico, por isso fica complicado de alguém responder, recomendo você a abrir um TÓPICO para a sua pergunta.

 

Você deve definir a linguagem de programação ou problema relacionado.

 

Mas caso você voltei aqui para ver se responderam, vou tentar lhe ajudar, mas não responda aqui, crie um Tópico só seu, okay?

 

Então, vamos lá.

 

Você tem 2 Banco de Dados para 1 único Sistema? Eu não tenho o costume de pensar em Banco De Dados para registrar funcionalidades, o que eu tenho em mente foi o que comentei com @kelvinferraz, um Banco De Dados e N tabelas para cada funcionalidade.

 

O que eu recomendo você a fazer é o seguinte, já que você tem LEVEL DE ACESSO, eu recomendo você a mudar essa forma de Gerar Bases de Dados e apenas criar 1 tabela para conteudo, então, você faz na sua programação os SELECT utilizando o LEVEL DE ACESSO de cada usuário.

 

Exemplo, tabela de Login tem ID do usuário, LOGIN do usuário, SENHA do usuário e o LEVEL de acesso do usuário.

 

Na sua programação o que tiver o tal do S,A,C você faz os SELECT sem utilizar os ID para acessar a tabela de conteudo, assim trazendo todas as informações, como você precisa que esses 3 não acessem as informações do Coworking, basta além de você colocar na tabela de informação o ID do usuário que inseriu aquele registro, colocar também o LEVEL de acesso, e no select colocar para esses três S,A,C tudo diferente na coluna Level de Acesso de COWORKING, assim não terei acesso as informações do usuário COWORKING que colocou informação na base, e para o COWORKING fica mais fácil, faz o select na base de conteudo onde o ID deve ser igual ao ID do usuário COWORKING logado e o LEVEL igual ao do COWORKING, assim eu só terei acesso as informações desse USUÁRIO que tem LEVEL DE ACESSO COWORING, assim o seu sistema não precisa ficar gerando TABELAS nem BASE DE DADOS para cada usuário, o que fica completamente inviável.

 

Bom, é isso.

 

* PRECISO DE AJUDA - Vejá meu problema aqui Problemas com SELECT

 

Espero ter ajudado.

 

Att.

Felipe Coutinho


Cara exatamente, isso resolveu meu problema, estou utilizando Laravel e esta exatamente como eu precisava, só estou com uma dúvida outra coisa, relacionada a BD que talvez seja o principal problema para eu entender a lógica de como deve ficar aplicação em si.

Seguinte eu tenho uma tabela produtos, nela ja possuo um user_id que é referenciada ao id da tabela users, porém quando eu cadastro esse produto eu queria poder validar que existe ja um produto cadastrado por exemplo como "nome ja cadastrado", eu estou tentando utilizar o que o Laravel tem disponível para validações como o 'nome_produto' =>  unique:produtos, porém como eu tenho essa situação de possuir vários usuários, eu teria que tentar amarrar outro id para o nome do produto? Porque dessa forma que eu fiz ele esta de fato validando e não deixa cadastrar 2 produtos com mesmo nome, mas como cada usuário tem o seu user_id nas tabelas como me informou, eu não consigo validar no campo só desse usuário, "ou ainda não sei fazer isso no laravel, se souber e puder me ajudar seria 1000!!".

Abraçoo

Compartilhar este post


Link para o post
Compartilhar em outros sites

@kelvinferraz

 

Simples, se você quer saber se existe um produto cadastrado na tabela antes de INCLUIR, basta você fazer um SELECT na tabela passando no WHERE o campo que quer buscar e o valor que você IRA tentar INCLUIR, se achar, BINGO você já tem o produto cadastrado e ai faz uma coisa, se não achar BINGO DE NOVO, você vai lá e incluir.

 

Basta você pensar na REGRA do que não pode acontecer.

 

Exemplo, EU (um usuário) quero incluir o produto CHAVE DE FENDA ai vem a regra, se já existir uma CHAVE DE FENDA na base eu não posso incluir, OU se já existe uma CHAVE DE FENDA QUE EU JÁ INCLUI UMA VEZ, então não posso incluir de novo, é você que tem que decidir qual é a regra.

 

Para as duas regras exemplos que eu coloquei ai em cima a diferença fica no WHERE.

 

PARA ESTE EXEMPLO: "EU (um usuário) quero incluir o produto CHAVE DE FENDA ai vem a regra, se já existir uma CHAVE DE FENDA na base eu não posso incluir" O meu SELECT fica assim:

 

SELECT * FROM TABELA WHERE NOME_PRODUTO = "CHAVE DE FENDA";

 

Se encontrar qualquer CHAVE DE FENDA o item existe.

 

PARA O OUTRO EXEMPLO: "OU se já existe uma CHAVE DE FENDA QUE EU JÁ INCLUI UMA VEZ, então não posso incluir de novo" O meu SELECT fica assim:

 

SELECT * FROM TABELA WHERE NOME_PRODUTO = "CHAVE DE FENDA" AND ID_USUARIO = 1;

 

1 é o meu ID na tabela de usuário.

Então se eu achar CHAVE DE FENTA com o MEU USUÁRIO então já existe um produto que eu INCLUI na tabela.

Então faça a sua regra e adapte para que você obtenha o resultado desejado.

 

Espero ter ajudado.

 

Att.

Felipe Coutinho

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

  • Conteúdo Similar

    • Por landerbadi
      Boa tarde pessoal. Estou tentado fazer uma consulta no banco de dados porém estou tendo dificuldades. Tenho uma tabela chamada "itens" com os seguintes campos: id, item, ativo. Nela tem cadastrado vários itens. No campo ativo eu coloco a letra "S" para informar que este item está ativo no sistema. Por exemplo: 1, casa, S 2, mesa, S 3, cama, S 4, moto S 5, rádio O quinto registro "radio" não está ativo no sistema pois não tem um "S" no campo ativo. E outra tabela chamada "produtos" com os seguintes campos (id, item1, item2, item3) com os seguintes registros: 1, casa, mesa, moto 2, mesa, casa, cama 3, rádio, cama, mesa Eu preciso fazer uma busca na tabela produtos da seguinte maneira: Eu escolho um registro na tabela "itens", por exemplo "mesa". Preciso fazer com que o php me liste todos os registros da tabela "produtos" que contenham a palavra "mesa". Até aqui tudo bem eu consigo listar. Estou fazendo assim: <?php $item = "mesa" $sql = mysqli_query($conn, "SELECT * FROM produtos WHERE item1 LIKE '$item' OR item2 LIKE '$item' OR item3 LIKE '$item' LIMIT 10"); while($aux = mysqli_fetch_assoc($sql)) { $id = $aux["id"]; $item1 = $aux["item1"]; $item2 = $aux["item2"]; $item3 = $aux["item3"]; echo $id . " - " . $item1 . ", " . $item2 . ", " $item3 . "<br>"; } ?> O problema é que está listando todos os registros que contém o item mesa. Eu preciso que o php verifique os demais item e me liste somente os registro em que todos os registros estejam ativos no sistema. No exemplo acima ele não deveria listar o registro 3. pois nesse registro contém o item "radio" e este item não está ativo no sistema. Ou seja, o registro "radio" na tabela itens não possui um "S" na coluna "ativo". Alguém sabe como resolver isso?
    • Por ILR master
      Fala galera.
      Espero que todos estejam bem.
      Seguinte: Tenho um arquivo xml onde alguns campos estão com : (dois pontos), como o exemplo abaixo:
       
      <item>
      <title>
      d sa dsad sad sadasdas
      </title>
      <link>
      dsadas dsa sad asd as dsada
      </link>
      <pubDate>sadasdasdsa as</pubDate>
      <dc:creator>
      d sad sad sa ad as das
      </dc:creator>
      </item>
       
      Meu código:
       
      $link = "noticias.xml"; 
      $xml = simplexml_load_file($link); 
      foreach($xml -> channel as $ite) {     
           $titulo = $ite -> item->title;
           $urltitulo = $ite -> item->link;
           print $urltitulo = $ite -> item->dc:creator;
      } //fim do foreach
      ?>
       
      Esse campo dc:creator eu não consigo ler. Como faço?
       
      Agradeço quem puder me ajudar.
       
      Abs
       
       
    • Por First
      Olá a todos!
       
      Eu estou criando um sistema do zero mas estou encontnrando algumas dificuldades e não estou sabendo resolver, então vim recorrer ajuda de vocês.
      Aqui está todo o meu código: https://github.com/PauloJagata/aprendizado/
       
      Eu fiz um sistema de rotas mas só mostra o conteúdo da '/' não sei porque, quando eu tento acessar o register nada muda.
      E eu também quero que se não estiver liberado na rota mostra o erro de 404, mas quando eu tento acessar um link inválido, nada acontece.
      Alguém pode me ajudar com isso? E se tiver algumas sugestão para melhoria do código também estou aceitando.
       
       
      Desde já, obrigado.
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.