ERLEDIGT
NEIN
NEIN
ANTWORTEN
3
3
ZUGRIFFE
4205
4205
EMPFEHLEN
-
Hi NG,
ich versuche eine zufällige ID innerhalb einer mySQL Datenbank zu erzeugen.
Problem: Eine Datenbanktabelle soll mit einer zufälligen 64stelligen ID versehen werden, wobei natürlich jede ID einzigartig sein muss.
Nachdem ichunter mySQL keine Ergebnisse mit einerm definierten Format erzeugen konnte, habe ich ein PHP Tool geschrieben. Aber der Zufallsgenerator erzeugt schon nach etwa 100 ID's immer wieder ID's, die bereits vergeben wurden.
Wer kann mir sagen, wie ich entweder;
...unter mySQL eine automatische ID erzeuge, die aus 64 Zifffern oder Groß und Kleinbuchstaben besteht, bzw. ob es überhaupt eine Chance gibt
oder welchen Fehler ich im folgenden Skript habe
[Johannes Röttger]PHP-Code:<?php
//******************************************************************************************
function NeueZufallsID($stellen)
{ //*** ermittelt einen Zufallsstring von gewünschter Länge ($stellen)
//*** ... und gibt diese als String an das Aufrufende Script zurück
$shoproot = "http://localhost";
include ("$shoproot/OnlineShop/shop.cfg"); //*** Einlesen der Einstellungen
$zufallsstring = "";
for ($i = 0; $i < $stellen; $i++)
{//*** Läuft solange, bis die Anzahl der gewünschten Zeichen gesetzt sind
$x = rand (0, 2); //*** Auswahl ob groß- oder Kleinschreibung, bzw Ziffer
switch($x)
{
case 0:
$Zeichen = rand (48, 57); // Ziffern von 0 bis 9 als ASCII Werte
$zufallsstring = $zufallsstring.chr($Zeichen); // anhängen des Zeichens
break;
case 1:
$Zeichen = rand (65, 90); // Zeichen von A bis Z als ASCII Werte
$zufallsstring = $zufallsstring.chr($Zeichen); // anhängen des Zeichens
break;
case 2:
$Zeichen = rand (97, 122); // Zeichen von A bis Z als ASCII Werte
$zufallsstring = $zufallsstring.chr($Zeichen); // anhängen des Zeichens
break;
}
}
return $zufallsstring;
}//*****************************************************************************************
?>
Ich hab das mal schön gemacht.
[/Johannes Röttger]Geändert von JohannesR (26.04.04 um 08:44 Uhr)
-
Siehst du den PHP Button im Formular nicht.....?
-
24.04.04 22:44 #3
In PHP gibts ja auch eine Funktion für eine einzigartige ID:
uniqid()
Die kannst ja dann länger, kürzer oder sonst was noch alles machen.
Ciao,
Nauti
-
Erstmal Danke für die Antwort und gleich noch eine Frage:
Wenn die ID's in kurzen Zeitabständen vielfach erzeugt werden, kann es dann nicht auch zu doppelten ID's kommmen, wenn diese aufgrund der Mikrotime erzeugt werden.
Denn was ich selber programmiert habe ist nicht s anderes, wenn man mal davon absieht, das ich das Rad neu erfunden habe, weil ich in meinen Referenzen nicht auf diese Funktion gestoßen bin....
Salü,
NetBu||
Ähnliche Themen
-
Zufällige Lichtstreifen erzeugen
Von hury im Forum Flash PlattformAntworten: 8Letzter Beitrag: 02.08.07, 00:09 -
Zufällige Bildauswahl
Von Aloa im Forum Javascript & AjaxAntworten: 1Letzter Beitrag: 14.03.05, 02:14 -
Zufällige Styles
Von M@DZG@ im Forum Javascript & AjaxAntworten: 6Letzter Beitrag: 20.02.04, 14:26





Zitieren
Login






[PHP][Snippet] Array zu XML konvertieren