Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Gente to com um problema!
Antes eu não estava conseguindo fazer o cadastro corretamente, pois as chaves estrangeiras estavam recebendo valor 0. Agora consegui descobri como fazer a chave estrangeira receber o valor da chave primária correspondente.
Obs: A chave primaria é auto implement mas a chave estrangeira estava recebendo 0.
Só que se vários usuário fizeram o cadastro ao mesmo tempo isso pode fazer com que o select retorne o id errado.
Por favor como resolver isso? Não achei nada que respondesse minha pergunta.
Aqui está meu humilde código.
<?php
include "conexao.php";
// recebe dados do formulario
$username = $_POST['txt_username'];
$senha= $_POST['txt_senha'];
$cpf= $_POST['txt_cpf'];
$num= $_POST['txt_num'];
$nome= $_POST['txt_nome'];
$sexo= $_POST['txt_sexo'];
$tel= $_POST['txt_telefone'];
$rua= $_POST['txt_rua'];
$cidade= $_POST['txt_cidade'];
$estado= $_POST['txt_estado'];
$bairro= $_POST['txt_bairro'];
$rg= $_POST['txt_rg'];
$email= $_POST['txt_email'];
$cep= $_POST['txt_cep'];
$sigla= $_POST['txt_sigla'];
// faz consulta no banco para inserir os dados do usuario
$sql = "insert into usuario (username,senha) values ('$username','$senha')";
$sql3 = "insert into dado (cod_dado,RG,sexo) values (' ','$rg','$sexo')";
$estrangeiradado = mysql_query("SELECT MAX(cod_dado) AS ultimo FROM dado");
$retorno = mysql_fetch_assoc($estrangeiradado);
$ultimo_registro = $retorno['ultimo'];
$ultimo_registro++;
$sql4 = "insert into contato (cod_contato,email,tel1) values (' ','$email','$tel')";
$estrangeiracontato = mysql_query("SELECT MAX(cod_contato) AS ultimo2 FROM contato");
$retorno2 = mysql_fetch_assoc($estrangeiracontato);
$ultimo_registro2 = $retorno2['ultimo2'];
$ultimo_registro2++;
$sql8 = "insert into uf (cod_uf,nome,sigla) values (' ','$sigla','$estado')";
$estrangeiraestado = mysql_query("SELECT MAX(cod_uf) AS ultimo3 FROM uf");
$retorno3 = mysql_fetch_assoc($estrangeiraestado);
$ultimo_registro3 = $retorno3['ultimo3'];
$ultimo_registro3++;
$sql7 = "insert into cidade (cod_cidade,nome,cod_uf) values (' ','$cidade','$ultimo_registro3')";
$estrangeiracidade = mysql_query("SELECT MAX(cod_cidade) AS ultimo4 FROM cidade");
$retorno4 = mysql_fetch_assoc($estrangeiracidade);
$ultimo_registro4 = $retorno4['ultimo4'];
$ultimo_registro4++;
$sql6 = "insert into bairro (cod_bairro,nome,cod_cidade) values (' ','$bairro','$ultimo_registro4')";
$estrangeirabairro = mysql_query("SELECT MAX(cod_bairro) AS ultimo5 FROM bairro");
$retorno5 = mysql_fetch_assoc($estrangeirabairro);
$ultimo_registro5 = $retorno5['ultimo5'];
$ultimo_registro5++;
$sql5 = "insert into endereço (cod_end,nome_rua,CEP,cod_bairro) values (' ','$rua','$cep','$ultimo_registro5')";
$estrangeiraend = mysql_query("SELECT MAX(cod_end) AS ultimo6 FROM endereço");
$retorno6 = mysql_fetch_assoc($estrangeiraend);
$ultimo_registro6 = $retorno6['ultimo6'];
$ultimo_registro6++;
$sql2 = "insert into cliente (cod_cliente,username,cpf,num_casa,nome,cod_dado,cod_contato,cod_end) values (' ','$username','$cpf','$num','$nome','$ultimo_registro','$ultimo_registro2','$ultimo_registro6')";
$cadastro = mysql_query($sql);
$cadastro = mysql_query($sql2);
$cadastro = mysql_query($sql3);
$cadastro = mysql_query($sql4);
$cadastro = mysql_query($sql5);
$cadastro = mysql_query($sql6);
$cadastro = mysql_query($sql7);
$cadastro = mysql_query($sql8);
// verifica se o usuario foi cadastrado
if($cadastro) {
echo "<script>alert('Usuário cadastrado com sucesso!!!');";
echo "window.location='cadastro.php'</script>";
exit;
exit;echo "<script>alert('Erro no cadastro!!!');";
echo "window.location='cadastro.php'</script>";
exit;
exit;
}
@mysql_close();
?>Carregando comentários...