Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Jefferson andre

Como pegar o id apos o registro ser salvo

Recommended Posts

Saudações a todos,

 

Gostaria de pegar o id do registro que acabou de ser salvo mas aparece a seguinte mensagem de erro:

Fatal error: Uncaught Error: Call to undefined method mysqli::lastInsertId() in C:\xampp\htdocs\xcompbrasil\cadastrar.php:48 Stack trace: #0 {main} thrown in C:\xampp\htdocs\xcompbrasil\cadastrar.php on line 48

O fonte  é o seguinte:

date_default_timezone_set("America/Sao_Paulo");
setlocale(LC_ALL, 'pt_BR');
$razaosocial         = $_POST['razaosocial'];
$fantasia             = $_POST['fantasia'];
$cnpj                 = $_POST['cnpj'];
$inscricao_estadual = $_POST['inscricao_estadual'];
$inscricao_municipal = $_POST['inscricao_municipal'];
$cpf                 = $_POST['cpf'];
$contatos             = $_POST['contatos'];
$email                 = $_POST['email'];
$site                 = $_POST['site'];
$endereco             = $_POST['endereco'];
$numero             = $_POST['numero'];
$complemento         = $_POST['complemento'];
$bairro             = $_POST['bairro'];
$cidade             = $_POST['cidade'];
$estado             = $_POST['estado'];
$cep                 = $_POST['cep'];
$telefone1             = $_POST['telefone1'];
$telefone2             = $_POST['telefone2'];
$telefone3             = $_POST['telefone3'];
$celular             = $_POST['celular'];
$produto             = $_POST['produto'];
$plano_mensal        = $_POST['plano_mensal'];
$data_contrato         = date("Y/m/d");
$hora_contrato         = date('H:i:s');

include("conexao.php");
$sql = "INSERT INTO empresa (razaosocial, fantasia, cnpj, cpf, insc_estadual, insc_municipal, logotipo, contatos, email, site, endereco, numero, cidade, estado, cep, bairro, complemento, telefone1, telefone2, telefone3, celular, produto, data_contrato, hora_contrato, plano_mensal) 
VALUES ('$razaosocial', '$fantasia', '$cnpj', '$cpf', '$inscricao_estadual', '$inscricao_municipal','','$contatos',lower('$email'),'$site','$endereco','$numero','$cidade','$estado','$cep','$bairro','$complemento','$telefone1','$telefone2','$telefone3','$celular','$produto','$data_contrato','$hora_contrato','$plano_mensal')";

$retval = $arquivo->query($sql);
$groupID = $arquivo->lastInsertId();

A linha 48 é a $groupID = $arquivo->lastInsertId();

 

Se alguém puder me ajudar agradeço

 

Abs

Compartilhar este post


Link para o post
Compartilhar em outros sites
14 horas atrás, washalbano disse:

 

11 horas atrás, emersondesigner disse:

tente   mysqli_insert_id();

 

Obrigado pela ajuda, deu certo.

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites
1 minuto atrás, Guilherme Luiz disse:

Lembrando que o mysqli_insert_id funciona apenas com tabelas onde o ID é auto-increment.

 

sim, neste caso deu certo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Se não é auto-increment, você está definindo qual é o ID!
Desta forma, basta você tratar o ID criado da maneira que quiser...

Salva numa session para utilizar num outro momento do código...
Salva no navegador do usuario via JS...

Pode fazer de várias formas, depende do seu fluxo e em que momento você quer reutilizar esse ID.

O last_insert_id vai retornar ZERO se a coluna primary da tabela é diferente de auto-increment.

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por Miguel_nascimento
      gostaria de pedir ajuda em relaçao a recuperaçao do ultimo id cadastrado em um banco de dados, tenho um cadastro de pessoas, e queria saber como faço pra mostrar o ultimo id cadastrado
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.