Ir para conteúdo
Fórum Script Brasil
  • 0

Mysql_insert_id


frnd

Pergunta

Existe uma tabela egresso e a tabela interno.... tenho que ao cadastrar um egresso, pegar o último ID da tabela interno e jogar no ID da tabela egresso, como faria isso? mysql_insert_id? se sim como faria com ele?

Link para o comentário
Compartilhar em outros sites

9 respostass a esta questão

Posts Recomendados

  • 0

Erro: Duplicate entry '0' for key 1

<?

$sql = "SELECT id FROM interno";

$var1 = mysql_query("$sql");

$ult_id = mysql_insert_id();

$sql2 = "INSERT INTO egresso VALUES ('','".$_POST['nome']."', '".$_POST['cpf']."', '".$_POST['rg']."', '".$_POST['orgaoexpeditor']."', '".$_POST['dtnasc']."', '".$_POST['sexo']."', '".$_POST['ec']."')";

$sql = mysql_query("$sql2") or die("Erro2" . mysql_error());

?>

Link para o comentário
Compartilhar em outros sites

  • 0
<?
$sql = "SELECT id FROM interno";
$var1 = mysql_query($sql);
$linhas=mysql_num_rows($var1);
$ult_id = mysql_result($var1,$linhas,"id");
$sql2 = "INSERT INTO egresso VALUES ('".$ult_id."','".$_POST['nome']."', '".$_POST['cpf']."', '".$_POST['rg']."', '".$_POST['orgaoexpeditor']."', '".$_POST['dtnasc']."', '".$_POST['sexo']."', '".$_POST['ec']."')";
$sql = mysql_query($sql2) or die("Erro na inserção dos dados");
?>

Editado por Renato Penna
Link para o comentário
Compartilhar em outros sites

  • 0

Duplicate entry '0' for key 1

Ahh... eu fiz errado... a tabela interno tem auto_increment já e coloquei sem querer na egresso....

mas mesmo assim não funciona, da o mesmo erro

Editado por frnd
Link para o comentário
Compartilhar em outros sites

  • 0

Warning: Unable to jump to row 1 on MySQL result index 2 in c:\apache\htdocs\egressos_sist\paginas\cadegresso_exe.php on line 23

$ult_id = mysql_result($var1,$linhas,"id");

Na tabela interno está criando os incrementos certo... mas na egressos tá cadastrando tudo com ID 0

Editado por frnd
Link para o comentário
Compartilhar em outros sites

  • 0

Isso acontece porque está pegando só o último id. Se você quiser pegar todos os ids da tabela interno e colocar em egresso, cadastre os outros dados e depois faça ...

$sql = "SELECT id FROM interno";
$var1 = mysql_query($sql);
$linhas=mysql_num_rows($var1);
for($i=0;$i<$linhas;$i++)
{
    $id = mysql_result($var1,$i,"id");
    $sql2 = "INSERT INTO egresso (id) VALUES ('".$id."')";
    mysql_query($sql2) or die("Erro na inserção dos dados");
}

Editado por Renato Penna
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,2k
×
×
  • Criar Novo...