Podrías guardar las imágenes con un nombre tipo "imagen_5.jpg", luego, cuando vayas a guardar otra, buscas el nombre de la última imagen guardada en la BD, tomas la parte numérica (la que está entre el guión bajo y el punto), le aumentas uno y lo asignas al nombre de la nueva imagen.
Código PHP:
Ver original$consulta = "SELECT
SUBSTRING_INDEX(
SUBSTRING_INDEX(nombre_archivo, '_', -1), '.', 1
) + 1 AS valor
FROM tablaimagenes ORDER BY id DESC LIMIT 1";
$nombreFinal = $nombre . '_' . $row['valor'] . $tipo; //imagen_6.jpg
}
else{
$nombreFinal = $nombre . '_1' . $tipo; //imagen_1.jpg
}
En la consulta, tomo la parte del nombre que va desde la derecha del guión bajo y de esta, tomo la parte que va desde la izquierda del punto, le sumo 1 y, a dicho valor, le asigno 'valor' como alias. Luego, si la consulta devuelve resultados (si ya se guardaron imágenes en la BD), concateno el nombre de la nueva imagen con un guión bajo, el valor incrementado en la consulta y el tipo de imagen, caso contrario, hago el mismo proceso, solo que el valor numérico será 1 puesto que, al no devolver resultados la consulta, quiere decir de que aún no se han guardado imágenes y esta sería la primera.
Saludos