Código PHP:
select id from tabla where id= a q?
| ||||
select Max(id) from tabla
__________________ M a l d i t o F r i k i |
| ||||
Código PHP: http://www.php.net/manual/es/functio...etch-array.php Saludos ![]()
__________________ DelirioLinux.. Software Libre y tecnología.. php también.. Saludos :arriba: Usuario Linux #198486 y Ubuntu #12791 Gutsy Gibbon |
| ||||
Código PHP:
__________________ M a l d i t o F r i k i |
| |||
Mas sencillo si cabe: echo mysql_insert_id(); Eso entrega el Último ID generado por un campo autoincremental de la BD/tabla en uso (se supone q lo usaras despues de haber hecho un INSERT y deseas conocer el ID q se generó para usarlo en algun SELECT/UPDATE posterior ..) Un saludo, |
| ||||
Re: pero... En ese caso te sirven todas las respuestas menos la de Cluster ![]() Cita: Mensaje Original por xias pero lo hago en otra pagina... es decir el insert se hace en otra pagina no donde pido la ultima id generada.
__________________ M a l d i t o F r i k i |
| |||
Re: Re: pero... Cita: Bueno .. mysql_insert_id() genera igualmente el último ID autonumerico generado por un INSERT .. Cierto es q si lo vas a ejecutar en otra página en ese tiempo alguien mas puede generar otro ID (otro registro q entre via INSERT ya lo haría) .. por lo tanto el ID no correspondería .. Mensaje Original por Cain En ese caso te sirven todas las respuestas menos la de Cluster ![]() Pero igualmente tras el INSERT puedes hacer el mysql_insert_id() y pasarselo como parámetro via URL/cookie/session a la siguente(s) páginas q lo necesites .. Siendo recomendable via session (pues sinó pordría ser "adulterado" en el camino). Las otras opcines te solucionan el problema de ir pasando esa variable "critica" y tan solo consumes algo mas de recursos en el script (pagina) q lo necesites ejecutando otra consulta a tu Mysql .. Un saludo, |
| |||
Hola, Las otras soluciones tambien sufren de ese fallo. Si en el tiempo que pasa desde que haces la insercion en la pagina 1 hasta que lees el ultimo ID en la pagina 2, otro usuario inserta un nuevo registro, el valor devuelto por todas las soluciones seria el ID del registro insertado por el otro usuario. Dicho esto, la unica solucion de leer el ID del registro que has insertado en la pagina 1, es leerlo en la propia pagina 1. Y en ese caso el mejor metodo (creo yo) es el de mysql_insert_id(), si el ID es autonumerico (si no lo es, no funciona). Saludos.
__________________ Josemi Aprendiz de mucho, maestro de poco. |
| |||
jeej pues tienes razon Josemi .. xD .. Yo la verdad q siempre lo calculo en la "pagina 1" y se lo paso a la pagina 2 por una variable de session .. Si lo haces en la "página 1" .. incluso podrias Bloquear la tabla q se está usando (de INSERT's) en ese instante para obtener el ID generado por un indice autonumerico. últimamente estoy usando mas la version SQL de mysql_last_id() pero igual funciona .. Un saludo, |
| |||
Lo de las "sessiones" empieza por leer las FAQ's de este foro .. tienes unos ejemplos básicos .. luego visat www.php.net .. Lo de bloquear la tabla .. En SQL de Mysql: http://www.mysql.com/doc/en/LOCK_TABLES.html (si tienes problemas con eso .. usa el foro Base de datos .. ) Un saludo, |
| |||
no me funciona... tengo este codigo y no me da error pero tampoco me muestra el ultimo id insertado. Código PHP:
__________________ Muchas gracias, saludos. |
| |||
Si has aplicado una funcion a un campo de tu consulta SQL .. tienes dos opciones para acceder al valor resultante de aplicar dicha función: Accediendo por el indice numerico .. (no por el indice asociativo). Código PHP: Código PHP: Código PHP: Código PHP: |
| |||
select max(id) as maximo Eso en SQL (de Mysql por lo menos) es un Alias .. osese .. se asigna el resultado de esa funcion a ese nombre (variable) .. Mas info: www.mysql.com Un saludo, |
| |||
Te refieres a un grafico y sobre-impreso ese valor de esa variable? Si es eso .. si, se puede con las librerias GD (pero si es eso lo que quires inicia un nuevo tema please ..y usa el buscador pues de vez en cuando se pregunta eso mismo ) Un saludo, |