Ir ao conteúdo
  • Cadastre-se

smarthome

Membro Júnior
  • Posts

    15
  • Cadastrado em

  • Última visita

Tópicos solucionados

  1. O post de smarthome em Como Cadastrar dados em tabelas relacionadas foi marcado como solução   
    Olá amigo,
     
    Vou tentar responder suas dúvidas.
     
    1)
     
    Quando um usuário se loga no sistema, provavelmente com login ou email que são campos textos, você deve validar o usuário e a senha.
     
    Uma vez validado o usuário e senha, você deve guardar na memória do servidor o usuário da sessão (id dele).
     
    Existem outras formas de fazer a mesma coisa, por exemplo:
     
    Você pode ter um campo de id da sessão na tabela de usuário e atualizar com o id da sessão do usuário logado, então em toda requisição você busca o id da sessão na tabela do usuário pelo id de sessão que o browser enviou.
     
    Você também poderia guardar o id do usuário em um cookie no browser e pegar esse id em toda a requisição. 
     
    Você também pode trafegar o id do usuário em todas as requisições em campos hidden.
     
    Eu utilizo a primeira opção, ou seja, após o usuário se logar, eu guardo o id dele na sessão do servidor.
     
    Não se deve guardar muita coisa na sessão para não ocupar a memória do servidor que geralmente é baixa.
     
    2)
     
    Você não grava em tabelas diferentes de uma vez. Não tem um comando para fazer isso. Você grava tabela por tabela.
     
    O que você precisa fazer é criar uma transação e dentro da transação você vai enviar cada comando para o banco. No final você faz o commit ou, se der erro, você captura o erro (catch) e faz o rollback.
     
    Provavelmente o id do anunciante é um campo serial ou auto incremento. Então você não passa esse campo no seu insert do anunciante, para que o mysql automaticamente insira o próximo.
     
    Depois que você inseriu na tabela de anunciante, você deve executar um outro comando para obter o último serial inserido para a conexão, ou seja, exatamente o id do anunciante que acabou de inserir. Para obter ele você executa a função LAST_INSERT_ID().
    SELECT LAST_INSERT_ID(); Então você pode inserir nas outras tabelas usando o ID retornado pela função.
     
    Abs.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!