é possível ter vários bancos para um único sistema, como fazer a conexão?

Olá,

alguém poderia me dar uma luz…

preciso criar um único sistema e este tenha vários clientes e cada cliente com seu banco de dados.

a ideia seria acessar por exemplo cliente1.dominio , cliente2.dominio, cliente3.dominio, etc…

ao acessar cada subdominio o sistema fizesse a conexão para o cliente.

no php puro consigo identificar e redirecionar para a configuração de cada cliente no momento do acesso, teria como fazer isto com o Scriptcase, tem uma conexão/configuração baseada no subdominio/dominio de acesso?

Obrigado

O que você faz no php, você pode fazer através do Scriptcase…
Veja os manuais e os exemplos… e o resto é contigo…

Manual:
https://www.scriptcase.com.br/exemplos/tutoriais/systems/multiple_databases.php
https://www.scriptcase.com.br/docs/pt_br/v9/manual/14-macros/01-visao-geral/

por domínio não é possível.
mas o projeto pode acessar bancos diferentes sim.

No meu caso eu passo pela url o nome da empresa e o login muda o banco de dados em cima do valor passado pela url.

Por domínio não.
Você consegue de maneira muito simples no SC.
Tenho um projeto de um único sistema com mais de 60 bases de clientes diferentes e funciona 100%
Estude estas macros e veja os videos sobre elas.

sc_connection_new(“base”, $arr_conn);
sc_connection_edit(“basecli”, $arr_conn);

Boa sorte.

Att,
Paulo.

Obrigado a todos, pelas respostas acho que já tenho uma noção do que fazer

Aqui tenho apenas o domínio.com.br
Neste domínio a “pessoa” entra com seu login@
Caso o login@ tenha acesso para apenas uma empresa, então já abre o menu na empresa para este @login

Caso o login@ tenha acesso a mais de uma empresa, então apresento uma grade com as empresas possível ao @login, e o usuário clica no ícone da empresa que quer acessar, aí o sistema abre o menu na empresa selecionada.

Quanto ao banco de dados, separo conforme o contrato com o cliente, que pode ser:
CNPJ + suas filiais
CNPJ diferentes + filiais

Link: https://forum.scriptcase.com.br/index.php/topic,16389.0.html

Eu sou o doido…
Uma aplicação e um banco, multiempresa e multifiliais… achei melhor por ser menos trabalho para manutenção…
Mas o que os colegas colocaram acima, realmente é a melhor pratica, separar por banco.

vai ser uma aplicação com vários bancos, um para cada cliente, cada um com suas tabelas individuais, melhor para gerenciar, que vai ter a Administração com os dados de cada cliente e já vai criar automático, e em caso de mudança de tabela da para fazer um script com um laço e atualizar todas.

só não defini o acesso, se crio um wildcard no apache para usar o nome.dominio ou se uso QueryString

estou fazendo testes ainda, mas vou criar uma php inicial que identifique o cliente, em uma das formas acima e recupere os dados de acesso, talvez salve uma sessão com os dados de acesso e acessar o login da aplicação com a mudança do banco, como foi recomendado, achei boa a solução.

o inicio vai ser algo como:

$PegaCliente = strtolower (‘Cliente1’); //Capturar dados para acesso
sc_sql_injection($PegaCliente);

$sql=“select ApelidoCliente,NomeCliente,Ativo,nomeDB,usuarioDB,senhaDB from configuracoes_clientes where ApelidoCliente=’$PegaCliente’ limit 0,1”;

sc_select(rs, $sql);

if ($DadosCli->EOF) //Se não localizar nada
{
echo “
Problema ao acessar”;
exit;
}
else
{
$Apelido = $DadosCli->fields[‘ApelidoCliente’];
$NomeCliente = $DadosCli->fields[‘NomeCliente’];
$Ativo = $DadosCli->fields[‘Ativo’];
$nomeDB = $DadosCli->fields[‘nomeDB’];
$usuarioDB = $DadosCli->fields[‘usuarioDB’];
$senhaDB = $DadosCli->fields[‘senhaDB’];

    if($Ativo  == 'S') 
   {
   }

}

Seguindo esta linha, sugiro não usar subdomínios…