Array
(
)

Reronando ID

PHP
Gleison Albuquerque
|
MVP
Pontos: 100
    29 ago 2013

Bom galera, não tenho muita prática com php, mas estou precisando realizar uma operação com um script em php.
Seguinte: Tenho uma aplicação que roda no android, essa aplicação realiza um insert no banco e retorna o id. Esse id é inteiro e autoincremento e o banco é o sql server 2005.
O código segue abaixo:
$tsql = "INSERT INTO Vendas_mob (id_entidade, emissao, status, id_vendedor,
id_condicao, id_tabela, observacao, total_venda, total, nfe, acrescimo)
Values(".$_POST['id_entidade'].", '"
.$_POST['emissao']."', '"
.$_POST['status']."', "
.$_POST['id_vendedor'].", "
.$_POST['id_condicao'].", "
.$_POST['id_tabela'].", '"
.$_POST['observacao']."', "
.$_POST['total_venda'].", "
.$_POST['total'].", "
.$_POST['nfe'].", "
.$_POST['acrescimo'].") SELECT SCOPE_IDENTITY() AS ID";
$stmt = sqlsrv_query($conn, $tsql);
if ($stmt === false){
echo "0";
} else {
echo lastId($stmt);
}
function lastId($queryID) {
sqlsrv_next_result($queryID);
sqlsrv_fetch($queryID);
return sqlsrv_get_field($queryID, 0);
}
O código insere no banco, so que não retorna o id.
Se alguem poder me ajudar, desde ja obrigado.

Rumao
   - 04 set 2013

Boa tarde veja se isso lhe ajuda:

#Código

SELECT IDENT_CURRENT(’NomeDaTabela’) — Retorna o último ID inserido em uma

determinada tabela, independente de conexão, escopo, etc, vai na tabela e

verifica qual o último id que foi inserido.

SELECT @@IDENTITY — Retorna o último ID inserido na conexão atual,

independente de tabela

SELECT SCOPE_IDENTITY() — Retorna o último ID inserido, independente de

tabela no mesmo escopo (Stored Procedure, Trigger, Function)

Fonte: http://blog.arcverde.com/index.php/2009/03/recuperar-o-ultimo-idindice-inserido-no-sql-sever/