Ir ao conteúdo
  • Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   12-02-2016

      Prezados membros do Clube do Hardware, Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:   Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas às perguntas abaixo:   Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.
    • DiF

      Poste seus códigos corretamente!   21-05-2016

      Prezados membros do Fórum do Clube do Hardware, O Fórum oferece um recurso chamado CODE, onde o ícone no painel do editor é  <>     O uso deste recurso é  imprescindível para uma melhor leitura, manter a organização, diferenciar de texto comum e principalmente evitar que os compiladores e IDEs acusem erro ao colar um código copiado daqui. Portanto convido-lhes para ler as instruções de como usar este recurso CODE neste tópico:  
Insurgent3

PHP Como utilizar a função do MySQL "LAST_INSERT_ID()"?

Recommended Posts

Postado (editado)

Olá,

 

Eu gostaria de pegar o ID da query que foi recém-inserida no banco de dados. Pra isso, eu descobri que a função LAST_INSERT_ID() do MySQL retorna o ID (chave primária auto_increment) de uma query recém inserida ou feito update no banco de dados.

 

O problema é que vi alguns exemplos e não estou sabendo ainda como usar esta função no PHP.

 

Segue meu código tentando utilizá-la para retornar o ID de uma cidade recém-cadastrada no banco de dados:

 

$sql_queryFundarPrimeiraCidade = "INSERT INTO cidades(nomeCidade,idDono) VALUES('".$nomeCidade."','".$idUsuarioAtualSession."')";
	  
	  // Grava a nova cidade no banco de dados
	  $exe_queryFundarPrimeiraCidade = mysqli_query($conexao,$sql_queryFundarPrimeiraCidade) or die("Falha inserindo gravando nova cidade. Erro: ".mysqli_error($conexao));
	  // Seleciona o ID recem gravado da nova cidade
	  $sql_retornoIdFundarPrimeiraCidade = "SELECT LAST_INSERT_ID();";
	  $exe_retornoIdFundarPrimeiraCidade = mysqli_query($conexao,$sql_retornoIdFundarPrimeiraCidade); // Retorna o ID da query acima(Primeira cidade fundada e inserida no banco de dados)
	  $idPrimeiraCidade = mysqli_fetch_array($exe_retornoIdFundarPrimeiraCidade);
	  
	  //echo "Id da cidade gerada: " . @ID;
	  
	  for($x=1;$x<=10;$x++)
	  {
		  for($y=1;$y<=10;$y++)
		  {
			 echo "<br><br><br>";
			 echo "ID da Cidade: ".$idPrimeiraCidade['cidadeId'];
			 echo "<br>Pos X: " .$x;
			 echo "<br>Pos Y: 	" .$y;
			 echo "<br>Tipo do terreno: ". rand(1,11);
		  }  
	  }

 

Os echo's imprimem tudo corrtamente menos a "ID da Cidade" que é o que estou tentando pegar do banco de dados da query insert recém-inserida. Não sei como utilizar essa função.

 

Alguém pode ajudar?

 

Obrigado.

 

 

=== EDIT ===

 

Consegui.

 

Segue o código que permitiu recuperar e mostrar o ID recém inserido:

 

echo "ID da Cidade: ".$idPrimeiraCidade[0];

 

Um array com a posição "0"(zero).

 

O código funcionou e mostrou o ID gerado e recém-inserido no banco de dados.

 

 

Obrigado.

Editado por Insurgent3

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário






Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações 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

×