Consulta INSERT devuelva id que agregó

Iniciado por Leguim, 24 Febrero 2020, 02:59 AM

0 Miembros y 1 Visitante están viendo este tema.

Leguim

Es decir tengo una consulta que va asignar un nuevo registro, y quiero que dicha función también devuelva el ID donde se guardó el registro...

Código (php) [Seleccionar]

        static function Add($x)
{
$con = Connection(BD_PASSWORD, BD_USER);
$query = $con->prepare('INSERT INTO x (id) VALUES (null)');
$query->execute(array(':x' => $x));
               
                // return id_donde_se_guardo;
}

Leguim

#1
La solución:
Código (php) [Seleccionar]

$id_x = $con->lastInsertId();
return $id_x;



engel lex

para ser sincero por odiosidad no respondí viendo cuanto te tardaba conseguirlo en google XD te has acostumbrado mucho a que te respondamos cosas simples que puedes responder tu mismo con google y php.net en cosa de minutos  ;-) ;-)
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

simorg

Si te lees las Reglas del Foro se encuentra una referencia a esto:

Citar1. Antes de preguntar

I. Buscar

Cualquiera que sea tu duda, alguien la ha tenido antes que tú.

La mayoría de las veces lo primero que hacemos cuando nos plantean un problema es buscar en Google. Y la mayoría de las veces se soluciona así por lo que si antes de nada buscas en Google, adelantarás trabajo a las personas que te van a responder.


Saludos.

Leguim

#4
Siempre tan amable,
te agradezco por no responderme... tampoco tenes ninguna obligación

engel lex

ya vi... te recomiendo siempre buscar por el motor de sql que uses, el problema es que tu busqueda era tal vez muy compleja y el contexto te evita los apropiados resultados

por ejemplo: "retornar id insert mysqli php" te devolverá el primer resultado

tambien tienes que pensar en el contexto de quien debe devolver el resultado, es decir, imagina que fuera por query de mysql y tienes 5 usuarios simulaneos, el asunto es que puede retornar cualquiera de los 5 id... en este caso tienes que pensar que el contexto de retorno debe estar sobre la conexion usada, es decir, el motor mysql...

así mismo tambien puedes hacer un var_dump a tu clase de consulta y verás todo lo que contiene
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.