Signalwerk - Web-Code-Library

Unique-MD5-Schlüssel für einen neuen MySQL-Datensatz erstellen

Die Funktion erstellt einen zufälligen, einmalig in einer bestimmten MySQL-Tabelle vorkommenden MD5-Schlüssel (32 Zeichen lange Hexadezimalzahl) zur eindeutigen Identifikation eines Datensatzes. So kann der Datensatz im URI einer Website aufgerufen werden, ohne die interne ID kenntlich zu machen.

Anstelle einer mysql_query-Abfrage wird die um eine Fehler-Routine erweiterte Funktion myq verwendet.

function unique_md5($tab) {
do { $md5 = md5(time().rand(11111,99999)); }
while(mysql_num_rows(myq("SELECT id FROM $tab WHERE md5='".$md5."'")) > 0);
return $md5;
}


Aufruf der Funktion

$q = "INSERT INTO table (md5,text) VALUES ('".unique_md5('table')."','Inhalt')";
if (myq($q) == true) {
$out .= 'Datensatz gespeichert';
}


http://de.wikipedia.org/wiki/Message-Digest_Algorithm_5
http://www.php.net/md5

Zurück zur Web-Code-Lib