php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2004

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 09.07.2004, 11:47  
Gast
 
Beiträge: n/a
Standard Zufallszahlen falsch Wichtig

Hallo Leute,
ich möchte mir mit diesem script zufallzahlen erstellen lassen.
Beispiel: f45g5, gg763 usw.
Diese sollen IMMER 5stellig sein.
Es sollen 5000 in die DB geschrieben werden.
Was passiert? Es werden sehr viele DOPPELTE eingetragen.
Wer kann mir Helfen. MEGA Wichtig.
DANKE
Hier das script:

function zufall() {
global $id_pass;
$buchstaben = array("a","b","c","d","e","f","g","h","i","j","k", "l","m","n","p","q","r","s","t","u","v","w","x","y ","z");
mt_srand ((double)microtime()*13333333);
$zahl1 = mt_rand(1,33333); $zahl3 = mt_rand(1,33333);
$zahl2 = mt_rand(1,33333); $zahl4 = mt_rand(1,33333);
$id = $buchstaben[$zahl3].$buchstaben
[$zahl4].$zahl1.$buchstaben[$zahl2].$zahl1;
$id_pass = $id."\n";
}
for($counter = 1; $counter <= 5000; $counter++) {
zufall();
$codenr=substr($id_pass, 0, 5);
//echo "$counter ) $codenr
";
$query = "Insert into code_nr (ident,code_id,apo_id,cancelled) VALUES('','$codenr','$apo_id','0')";
$sql =mysql_query($query);
echo mysql_error ();
}
 
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 09.07.2004, 12:46  
Gast
 
Beiträge: n/a
Standard Zufallszahlen

Tag auch,

wenn Du Zufallszahlen erstellst können natürlich welche doppelt sein...
das ist bei "ziehen mit zurücklegen" (Stochastik) so.

Das kannst Du abfangen, in dem Du $id_pass oder wo sind die Zufallsstrings gespeichert, durchsiehst, ob $id da schon enthalten ist. Wenn ja einen neuen Zufallsstring generieren....

MfG
Yussuf-ff
 
Alt 09.07.2004, 12:59  
Erfahrener Benutzer
 
Registriert seit: 21.07.2003
Beiträge: 340
PHP-Kenntnisse:
Fortgeschritten
Simbo
Standard

also ich würd das glaub ich folgendermaßen angehen...
$zufallswerte ist ein array
$codenr wird dann in der for-Schleife 5000 mal in das array gepusht, falls $codenr nicht schon mit search_array im array gefunden wurde. sollte das der fall sein, dann $counter--
somit hast du ein array mit 5000 verschiedenen werten, die du dann mit foreach in die Datenbank eintragen kannst...
Müßte funktionieren, denk ich...
__________________
simbo.de
Simbo ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
was ist da falsch ? PHP Tipps 2006 1 24.08.2006 20:08
HILFE: zurücksenden von Mails deren Mailadresse falsch ist PHP Tipps 2006 3 01.05.2006 12:50
JavaScript: If-Bedingung - was mache ich falsch? SvenLittkowski HTML, Usability und Barrierefreiheit 5 12.01.2006 19:13
Wert um 1 erhöhen / inkrementieren, was mache ich falsch? mercurio Datenbanken 10 27.12.2005 13:06
nicht doppelte zufallszahlen imported_kontur PHP Tipps 2005-2 6 15.10.2005 17:30
Umlaute werden falsch dargestellt Datenbanken 2 12.10.2005 13:28
[Erledigt] Was ist da falsch??? Datenbanken 2 26.08.2005 11:44
Was ist daran falsch PHP Tipps 2005-2 11 27.07.2005 11:29
Datumsausgabe wird falsch zurückgegeben PHP Tipps 2005 7 28.05.2005 00:05
5 zufallszahlen von 10 ohne doppelte janni PHP Tipps 2005 1 17.05.2005 10:49
Zufallszahlen wollen nicht... PHP Tipps 2005 9 11.04.2005 13:15
falsch dargestellte umlaute in db ändern - replace() nautiluS Datenbanken 1 30.12.2004 20:22
Abfrage wird falsch sortiert juhuwoorps Datenbanken 2 04.09.2004 19:36
POST-Variablen kommen falsch an PHP Tipps 2004 1 27.08.2004 10:08
Datensätze werden falsch angezeigt(Tabellen) PHP Tipps 2004 3 24.07.2004 20:18

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php zufallsstring doppelt, zufallsstring javascript ohne doppelte

Alle Zeitangaben in WEZ +2. Es ist jetzt 03:21 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.