Jump to content
proflupin

Criação de chave estrangeira

Recommended Posts

Estou com dificuldade para criar uma chave estrangeira no meu banco de dados.

 

No meu cadastro de chamados, é buscado o id da sessão e passa ao banco de dados, conforme abaixo:

$titulo = $_POST['titulo'];
$desc =  $_POST['desc'];
$id_usuario = $_SESSION['id_usuario'];

$query = "INSERT INTO `chamados` (`titulo_chamado`, `desc_chamado`, `usuario_id`) VALUES ('$titulo', '$desc', '$id_usuario')";
$insere = mysqli_query($conexao, $query);

Minha tabela chamados é a seguinte:

image.png.c44f6fd8bd89047725ba0710e97af5e6.png

 

E a de usuários a seguinte:

image.png.edfd639ff405171aba9da58cdff1c755.png

 

O que pretendo fazer é: ao inserir na tabela 'chamados'(id_usuario) seja referenciado com o (id_usuario) da tabela 'usuarios'.

Share this post


Link to post
Share on other sites

Cannot add or update a child row: a foreign key constraint fails. Este era o erro, porém consegui resolver excluindo todos os dados da tabela chamados.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By Thalles Rangel
      Disponibilizando para vocês, sistema PHP 7 controle de estoque..
      https://www.4shared.com/rar/NsY_o5qwfi/controleDeEstoquePHPCodigoFont.html?
       
       
       
       
      OBS. NÃO SEGUE UM PADRÃO - É PARA QUEM ESTÁ APRENDENDO
    • By Worn
      Fala rapaziada estou tendo alguma Warmi no meu sistema to batendo a cabeça aqui e não consigo resolver 
      https://prnt.sc/oqrcmy
       
      linha do erro
      <?php /* * Login Class * * Desenvolvido por Gabriel Neves * Seguir cotes de desenvolvimento * */ class Login { private $tabela, $campoID, $campoLogin, $campoSenha; function __construct($tabela = 'tbl_usuarios', $campoID = 'id', $campoLogin = 'email', $campoSenha = 'senha') { // Iniciando sessão session_start(); // Definindo atributos $this->tabela = $tabela; $this->campoID = $campoID; $this->campoLogin = $campoLogin; $this->campoSenha = $campoSenha; } // ------------------------------------------------------------------------ /* * Retornando login do usuário que está na sessão * * @access public * @return string */ function getLogin() { return $_SESSION[$this->campoLogin]; } // ------------------------------------------------------------------------ /** * Retornando ID do usuário que está na sessão * * @access public * @return integer */ function getID() { return $_SESSION[$this->campoID]; } // ------------------------------------------------------------------------ /** * Trata as informações recebidas, procura o usuário no banco de dados e, se encontrado, * registra as informações na sessão. * * @access public * @param string * @param string * @param string * @return boolean */ function logar($login, $senha, $redireciona = null) { // Tratando as informações $login = mysqli_real_escape_string($login); $senha = mysqli_real_escape_string($senha); // Verifica se o usuário existe $query = mysqli_query($conexao, "SELECT {$this->campoID}, {$this->campoLogin}, {$this->campoSenha} FROM {$this->tabela} WHERE {$this->campoLogin} = '{$login}' AND {$this->campoSenha} = '{$senha}'"); // Se encontrado um usuário if(mysqli_num_rows($query) > 0) { // Instanciando usuário $usuario = mysqli_fetch_object($query); // Registrando sessão $_SESSION[$this->campoID] = $usuario->{$this->campoID}; $_SESSION[$this->campoLogin] = $usuario->{$this->campoLogin}; $_SESSION[$this->campoSenha] = $usuario->{$this->campoSenha}; // Se informado redirecionamento if ($redireciona !== null) header("Location: {$redireciona}"); else return true; } else return false; } // ------------------------------------------------------------------------ /** * Verifica se o usuário está logado * * @access public * @param string * @return boolean */ function verificar($redireciona = null) { // Se as sessões estiverem setadas if(isset($_SESSION[$this->campoID]) and isset($_SESSION[$this->campoLogin]) and isset($_SESSION[$this->campoSenha])) return true; else { // Se informado redirecionamento if ($redireciona !== null) header("Location: {$redireciona}"); return false; } } // ------------------------------------------------------------------------ /** * Finaliza a sessão do usuário * * @access public * @param string * @return void */ function logout($redireciona = null) { // Limpa a Sessão $_SESSION = array(); // Destroi a Sessão session_destroy(); // Modifica o ID da Sessão session_regenerate_id(); // Se informado redirecionamento if ($redireciona !== null) header("Location: {$redireciona}"); } } ?>  
    • By danielmmoretto
      Estou quebrando a cuca aqui pra achar uma solução para fazer um TOP 10 de uma tabela (tbpontuacao) onde tenho os campos USUARIO, CIDADE, PONTOS, DATA.
      Cada vez que o usuário conclui uma etapa, ele ganha pontos que são cadastrados nesta tabela com a devida data e sua identificação.
       
      Preciso de um resultado que me mostre os 10 melhores colocados do mês atual.
       
      Alguém pode me dar uma luz... um caminho... 

      GOSTARIA DE UM RESULTADO MAIS OU MENOS ASSIM...

      1º  JOÃO MIGUEL  10 PONTOS  CAMPINAS/SP
      2º  ANA CLARA       9 PONTOS  BELO HORIZONTE/MG
      3º JULIA SA             6 PONTOS  CARAPICUIBA/SP
      ...
       
    • By WitchMad
      Oi gente!
      Seguinte:
      Estou querendo fazer um sistema de assinatura, com data de validade.
      Já tenho toda a base pronta, só não sei como fazer uma forma de verificar essa data.
      Por hora estou registrando a data e pensei em algo assim:
      <?php $data_validade = "2019-04-26"; if($data_validade <= date('Y-m-d')){ header("Location: index"); $_SESSION['msg'] = "Conta expirada, realize um novo pagamento"; } ?> Mas creio que isso não funcione.
       
      Se tiver alguma função ou ferramenta que possa fazer essa verificação eu gostaria
    • By Almeidareii
      Bom, tenho 3 enigmas para descobrir porém não estou conseguindo, se puderem me dar uma  ajuda, com alguma dica ou com a propria rsp kk
      Encontrar algum padrao, alguma coisa ja ajuda, obrigado a todos.
      obs eles podem estar interligados
       
      1)
      139 28 49 19 189 11 5 18
      156 66 49 19 95 10 
      214 9 
      19 5 88 15 45 29
      101 11 156 66
      129 10 19 5 88 15
      101 11 19 5 45 29
      129 10
      214 9
      45 29 139 26
      156 66 19 5 95 10
      43 63 136 21 5 18
      214 9
      156 66 5 18
      189 11 88 15 156 66 49 19
      95 10 19 5 139 28
      101 11 5 18 129 10
      139 28 49 19 189 11 5 18
      101 11 19 5 45 29
      19 5 88 15 45 29
      189 11 88 15 156 66 49 19
      156 66 19 5 95 10
      95 10 19 5 139 28
      101 11 156 66
      88 15 139 26 38 26
      95 10 139 26 189 11
      139 28 5 18 156 66 5 18
      156 66 19 5 95 10
      19 5 88 15 45 29
      101 11 156 66
      214 9
      43 63 136 21 5 18
      139 28 49 19 189 11 5 18
      19 5 88 15 45 29
      129 10 19 5 88 15
      19 5 49 19 129 10
      19 5 88 15 45 29
      101 11 5 18 129 10
      139 28
      101 11 5 18 129 10
      129 10 19 5 88 15
      129 10
      19 5 88 15 45 29
      156 66 189 11 45 29
      101 11 5 18 129 10
      101 11 19 5 45 29
      43 63
      101 11 156 66
      129 10
      101 11 19 5 45 29
      214 9
      156 66 5 18
      139 28 49 19 189 11 5 18
      19 5 88 15 45 29
       
      2) 
      Imf%dmstpv"|jtwp1"Jv(oiw#fppvmn{o!uk'yknxwcu1'Lsc"nwpvv!jmkmdlo0
      E!fgsfggj-"wunhj#ptt(ptprv!fhth&k!lozyk'tzg#d'hnq0!C'wsuoqf$wh}0
       
      3)  Uma imagem com varios números em japones que traduzidos davam nisso (j? é por que tinha um j e eu não sei o seu valor):
      10 5 1 10 9 8 10 6 6 10 7 10 1 10 9 2 10 4 3 10 4 10 9 5 10 5 10 3 10 5 10 7 10 10 9 100 2 10 1 7 10 4 10 7 7 10 9 3 10 3 9 10 2 2 10 6 4 8 10 9 6 8 3 10 10 9 5 10 4 10 2 4 10 5 10 9 6 10 9 6 2 10 1 10 9 10 2 5 4 10 3 10 9 4 10 7 2 10 9 10 1 10 2 10 7 10 8 10 7 2 10 5 10 9 9 10 10 9 4 10 10 10 7 10 4 10 6 2 10 2 10 5 10 9 7 10 10 7 2 10 4 10 7 10 7 10 3 5 10 9 7 10 9 10 6 10 6 j? 10 9 6 10 2 10 7 2 10 8 10 9 9 10 6 10 9 4 10 4 10 7 2 10 4 10 9 6  10 4 j? 10 3 100 10 3 10 2
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.