Eindeutige ID

crazy_chicken

Erfahrenes Mitglied
Hallo Zusammen,

ich habe folgende Frage:

Ich habe in der Datenbank die Datensätze, die selbstverständlich auch eine ID haben (autoinc.) .
Jetzt will ich die Datensätze ausgeben, aber anstelle von tatsächlichen IDs eine 5 stellige ID ausgeben, die ebenfalls eindeutig sind.
Später muss ich auch aus diesen IDs wieder die tatsächliche ID ermitteln können.
(Es werden maximal 1000 Datensätze ausgegeben).

Hat jemand da eine Idee?


Danke im Voraus!
 
Abend crazy_chicken,

wenn du keine besonderen Anforderungen hast, würde ich einfach die ID/Zahl mit speziellen Zeichen bis zu fünf Stellen auffüllen. Dies geht mit [phpf]str_pad[/phpf] wunderbar.

Beispiel:
PHP:
// ID von Datenbank
$id = 12;

// Ergibt 12eee
echo str_pad($id, 5, 'e', STR_PAD_RIGHT);
Zurückrechnen ist natürlich sehr trivial.

(Es werden maximal 1000 Datensätze ausgegeben).
Heißt das, dass man nur IDs von 1 - 1000 beachten muss?
Wenn ja, dann addierst du auf die id_old einfach 9999, sodass du für id_old=1 10.000 erhälst usw.
 
Wenn diese ID eine bestimmte Syntax folgen muss bietet es sich an diese ebenfalls in der DB zu speichern. Ansonsten würde ich die Anzahl der Zeichen der ID prüfen und die restlichen fehlenden Zeichen mit führenden Nullen füllen.
Bsp.:

12 => 00012
1234 => 01234
100 => 00100
 
Zurück