Deprecated: Assigning the return value of new by reference is deprecated in /home/eduardobona/eduardobona.com.br/blog/wp-settings.php on line 232

Deprecated: Assigning the return value of new by reference is deprecated in /home/eduardobona/eduardobona.com.br/blog/wp-settings.php on line 234

Deprecated: Assigning the return value of new by reference is deprecated in /home/eduardobona/eduardobona.com.br/blog/wp-settings.php on line 235

Deprecated: Assigning the return value of new by reference is deprecated in /home/eduardobona/eduardobona.com.br/blog/wp-settings.php on line 252

Deprecated: Assigning the return value of new by reference is deprecated in /home/eduardobona/eduardobona.com.br/blog/wp-includes/cache.php on line 36

Deprecated: Assigning the return value of new by reference is deprecated in /home/eduardobona/eduardobona.com.br/blog/wp-includes/query.php on line 15

Deprecated: Assigning the return value of new by reference is deprecated in /home/eduardobona/eduardobona.com.br/blog/wp-includes/theme.php on line 505
Eduardo Bona » Função PHP MYSQL para obter retorno do ID

Função PHP MYSQL para obter retorno do ID

Eis o caso: você precisa cadastrar dados na tabela “X” e logo após cadastrar o restante dos dados na tabela “Y”, a qual tem como chave estrangeira(FK) a PK da tabela “X”.

O problema: A tabela “X” tem como chave primária um campo auto_increment por isso logo após cadastrar a tabela “X” você precisa recuperar esse campo que foi cadastrado.

Para você não ter que ficar recuperando essa chave com outro select cheio de filtros e cálculos (gambiware), o PHP tem uma função para MYSQL que é a seguinte:

$id = mysql_insert_id();

Pronto!

Mesmo a função sendo simples, um exemplo:

$categoria = "eletrônicos";
$sql = "INSERT INTO tb_categoria ('cat_id', 'cat_descricao') VALUES(NULL, '$categoria')";
mysql_query($sql);
//
// Agora a mágica
$cat_id = mysql_insert_id();
$produto = "Tv Digital";
$sql = "INSERT INTO tb_produto('pro_id', 'cat_id', 'pro_descricao') VALEUS (NULL, '$cat_id', '$produto')";

Referência:
Documentação PHP - mysql_insert_id()

Leave a Reply