PHP - ¿Cómo obtengo el lastinsertID del ultimo registro que hizo mi modelo en PHP?

 
Vista:
sin imagen de perfil
Val: 9
Ha aumentado su posición en 14 puestos en PHP (en relación al último mes)
Gráfica de PHP

¿Cómo obtengo el lastinsertID del ultimo registro que hizo mi modelo en PHP?

Publicado por cristhian (4 intervenciones) el 04/01/2021 19:34:40
Buenas tardes con todos necesito ayuda , soy relativamente nuevo en programación y me encuentro ya sufriendo un par de días con esta parte del código, lo que quiero hacer es que cuando llamo al modelo MDlPublicartrabajo que hace el insert de una tabla llamada publicaciones, quisiera traerme el ultimo registro con un lastinsertID y meterla como variable en mi foreach en el ultimo campo justo donde dice'52' puse 52 para ensayar con el id de uno de los registros de la tabla publicaciones y si inserta en mi bd, pero quisiera insertar siempre el ultimo registro de mi modelo MDlPublicartrabajo muchas gracias de antemano.

Este es el código del controlador:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
<?php
 
error_reporting(E_ALL);
ini_set('display_errors', '1');
 
class ControllerPublicacion{
 
 
	  /*mostrar publicaciones */
 
    static public function ctrMostrarDatosPublicaciones($item,$valor){
 
        $tabla="publicaciones";
 
        $respuesta=ModeloPublicaciones::MdlMostrarPublicaciones($tabla,$item,$valor);
        return $respuesta;
 
 
 
    }
 
 
 
 
 
	 /*----REGISTRO DE USUARIOS----*/
    static public function ctrCreatePublicacion(){
 
 
        if(isset($_POST["idusuario"])){
             if(preg_match('/^[a-zA-Z0-9]+$/', $_POST["idusuario"]))
                {
 
 
 
 
 
 
 
 
                 $tabla="publicaciones";
 
 
                $datos=array("idusuario" => $_POST["idusuario"],
                             "duracion" => $_POST["duracion"],
							 "titulo" => $_POST["titulo"],
							 "especialidad" => $_POST["especialidad"],
							 "niveltrabajador" => $_POST["niveltrabajador"],
							 "descripciontrabajo" => $_POST["descripciontrabajo"],
							 "complejidadtrabajo" => $_POST["complejidadtrabajo"],
							 "tipopresupuesto" => $_POST["tipopresupuesto"],
							 "rango" => $_POST["rango"],
							 "rangominimopresupuesto" => $_POST["rangominimopresupuesto"],
							 "rangomaximopresupuesto" => $_POST["rangomaximopresupuesto"],
							 "presupuestofijo" => $_POST["presupuestofijo"]
							);
 
                 $respuesta=ModeloPublicaciones::MdlPublicarTrabajo($tabla,$datos);
 
 
 
 
 
 
 
									$conn=new PDO("mysql:host=localhost;dbname=bdtrabajo","root","");
				 $especialidad = $_POST["especialidad"];
 
				          foreach ($_POST['habilidades'] as $habilidad) {
 
        $queryhabilidad="insert into habilidadpublicacion (id,habilidad,idespecialidad,idpublicacion) VALUES (null,'$habilidad','$especialidad','52')";
 
							  if ($resultadoM = $conn->query($queryhabilidad)){
 
 
 
 
                     echo'<script>
           Swal.fire({
  type:"success",
  title: "!El trabajo se ha guardado correctamente!",
 showConfirmButton: true,
 confirmButtonText: "Cerrar",
 closeOnConfirm: false
})
           .then((result)=>{
            if(result.value){
            window.location= "publicacion";
            }
            });
            </script>';
 
 
 
 
							  }
 
						  }
 
 
 
 
 
 
 
 
 
 
             }
            else{
 
            echo'<script>
           Swal.fire({
  type:"error",
  title: "!Oops algo salio mal!",
 showConfirmButton: true,
 confirmButtonText: "Cerrar",
 closeOnConfirm: false
})
           .then((result)=>{
            if(result.value){
            window.location= "inicio";
            }
            });
            </script>';
 
 
 
            }
 
        }
 
    }
 
 
 
 
 
 
 
 
 
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de joel
Val: 3.828
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

¿Cómo obtengo el lastinsertID del ultimo registro que hizo mi modelo en PHP?

Publicado por joel (1269 intervenciones) el 05/01/2021 08:41:17
Hola Cristhian, el lastinsertid (https://www.php.net/manual/en/pdo.lastinsertid.php) te da el id del ultimo insert que has realizado... según entiendo, ti quiere tener el ultimo id de la base de datos, no?
Si es así, tendrás que hacer una consulta sql para obtenerlo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Mauro
Val: 2.761
Oro
Ha aumentado 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

¿Cómo obtengo el lastinsertID del ultimo registro que hizo mi modelo en PHP?

Publicado por Mauro (1036 intervenciones) el 05/01/2021 15:40:11
En la línea 74 podrías probar con:

1
$id = $conn->lastInsertId();
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar