Ir para conteúdo
Fórum Script Brasil

Murilo Lessa

Membros
  • Total de itens

    2
  • Registro em

  • Última visita

Sobre Murilo Lessa

Murilo Lessa's Achievements

0

Reputação

  1. fala galera, é o seguinte: eu to começando a fazer uns sites mais cabeludos em PHP e estou com um problema "conceitual" de como aplicar OO nesses projetos. voces separam SQL de código HTML? idealmente eu queria ter codigo HTML/PHP de layout, uma parte SQL que controla a transacao e um outro nivel PHP/SQL que faz o acesso ao banco. voce trabalha dessa maneira? meu jeito padrão de programar, que é um pouco trabalhoso para sites pequenos, ajuda bastante quando os sistemas incham em complexidade, é +- criando por exemplo uma class clssUsuario que abstrai um/uns registro(s) da tabela de usuarios. a ideia é que a classe Usuario abstraia todo o recordset ai você pode fazer por exemplo $dbc = new DBCommunication(); $user = new User($dbc); $user->name = 'John'; $user->age = 35; $user.save(); // inclui ou faz update $project = new Project($dbc); $project->id_user = $user->id; $project->name = 'Johns Project'; $project.save(); dessa forma, cada vez que um tipo novo surge, suponha que amanha eu queria colocar noticias, então eu crio uma classe Noticias que abstrai o recordset de Noticias e tudo parte dai... a minha duvida é, na sua experience de mtos anos como programador, isso é o jeito padrão? como no mercado profissional você dividiria isso? você cria a pagina html+php+sql tudo junto? e faria mais sentido você ter o metodo de salvar/incluir na classe base, por exemplo usuario.Salva(), ou centralizar tudo numa classe de acesso direto ao database, como $dbc.IncluiUsuario($user)? aff.. locura né? mas é um pulgão atrás da minha orelha porque toda vez que eu faço um código que não segue esse padrão, eu tenho a impressão que o código está sujo, pouco dividido e de fácil manutenção... obrigado e não tenha pressa nenhuma em expressar suas opiniões :) falou e grande abraço, Murilo
  2. galera, uma pergunta teórica sobre banco de dados mysqli/php. é uma dúvida constante que me bate na hora de implementar algumas soluções: Eu tenho tb_usuarios_premios, que são premios que o usuario escolhe dar para um determinado amigo. Cada usuario pode escolher até 5 premios por amigo. A qualquer momento o usuário pode editar e alterar o conteúdo e número de prêmios oferecidos. TB_USUARIOS_PREMIOS id_premio chave primaria da tabela id_autor chave ex p/ tb_usuarios, o autor id_amigo chave ex p/ tb_usuarios, p/ quem o premio sera dado valor descricao O formulario são 5 linhas, cada linha com 2 textboxes onde o usuario informa o valor da recompensa, e sua descricao. Ele não necessariamente, como eu já falei, precisa usar as 5 linhas, ele pode apenas oferecer 2 recompensas, ou qualquer outro valor. A cada vez que o usuário alterar as recompensas no formulário, eu preciso de alguma forma atualizar a tabela. Como ele pode ter inserio, excluído, ou alterado uma recompensa, qual a melhor abordagem para manejar essa tabela? 1. simplesmente apago todos os registro do autor e depois leio o formulário e insiro tudo novamente? me parece o mais simples simples e rápido, mas nesse caso eu talvez excluísse o campo id_premio porque o numero da chave primária iria sempre subir muito rápido a cada vez que alguém no sistema alterasse as recompensas. 2. eu automaticamente insiro 5 registros em tb_usuarios_premios quando um novo usuario for criado e depois apenas dou updates nessas linhas? nesse caso eu precisaria de mais codigo para controlar o fato de que um dia eu posso querer mudar a quantidade de premios permitida por usuario para mais ou menos. 3. eu faço algo mais complexo e tento salvar na memóra se a linha da recompensa no formulário já existia no banco ou não e controlo no código se eu posso apenas dar um update numa linha já existente, ou é o caso de haver uma inserção e exclusão na base? essa abordagem é mais bonita mas um tanto trabalhosa para algo que poderia ser resolvido facilmente na abordagem 1, ou 2. o que voces acham? obrigado e bons códigos :) Murilo a linha do premio foi mesmo alterada Qual a melhor abordagem para manejar essa tabela? 1. quando um usuário é inserio em tb_usuarios eu automaticamente insiro 5 itens de premios e a cada ve e tb_usuarios. eu tenho tambem tb_usuarios_premios, que são premios que o usuario escolhe para seu amigo. o usuario pode no máximo indicar 5 premios.
×
×
  • Criar Novo...