phpbar.de logo

Mailinglisten-Archive

[php] Registrierungscodes generieren

[php] Registrierungscodes generieren

Unbekannter_Typ unbekannter_typ at web.de
Di Jun 15 08:56:33 CEST 2010


Hallöchen, 

ich habe mal eine Anmeldung per Email mit so einem Code realisiert, indem ich den Unix Timestamp per MD5 in eine Checksumme konvertiert habe.
Da der Timestamp immer anders ist, muss auch die Checksumme immer anders sein.
Ist zwar ein langer Key, aber du kannst ja den String eventuell noch halbieren oder ähnliches.
Vielleicht hilft es dir ja.
  ----- Original Message ----- 
  From: diez 
  To: deutschsprachige PHP-Mailingliste 
  Sent: Tuesday, June 15, 2010 8:20 AM
  Subject: Re: [php] Registrierungscodes generieren


  Hi Rainer, @ll



  Das mit dem SELECT ist generell eine schlechte Idee (in all ihren Formen
  , z.B. SELECT FOR UPDATE).
  Ein Insert statement ist hier angebrachter das einfach auf erfolg
  geprüft wird und bei Bedarf nochmal wiederholt wird. Dafür sollte regnr
  entweder der Primärschlüssel der Tabelle sein, oder aber ein Unique Key.
  Falls du die ID möglichs lange verwenden willst, solltest du jetzt schon
  BIGINT nehmen, damit der Zahlenbereich ausreichend groß ist.

  Wenn möglich nimmst du einen String statt eines Zahl und generierst eine
  Zeichenfolge was einen noch größere Raum ermöglich.

  Hauptproblem ist aber der, dass Index der an dieser Stelle
  wahrscheinlich fehlt. Primärschlüssel und Unique-Key sorgen dafür das
  jeder Eintrag nur einmal da ist und das der Lookout schneller geht.

  Gruß

  Dieter


  Am 14.06.2010 14:55, schrieb postneutral. Michael Felstau:
  > Hallo Rainer,
  >
  > ich generiere ein passwort, erstelle die md5-summe und führe einen 
  > select-Befehl aus:
  > SELECT regnr FROM register WHERE regnr=$passwort
  >
  > Ist der negativ speichere ich  die Daten mit:
  > INSERT INTO tabelleregnr (regnr, ...) VALUES ($passwort, ...)
  > INSERT INTO register (regnr, ...) VALUES ($passwort, ...)
  > in zwei Tabellen einmal im klartext und einmal als md5 summe.
  >
  > Danach ermittle ich die lastinsertID und schreibe die Daten noch in eine 
  > txt-datei.
  >
  >   
  >> hast Du auch einen Index auf die gesuchte
  >> Splate gelegt?
  >>    
  >>     
  > Nein, ich fange gerade mit PHP und mysql an. Muss ich mich mal schlau 
  > machen was das heißt.
  >
  > danke erst mal
  > Michael
  >   

  -- 
  ** Allgemeine deutschsprachige PHP-Liste: php at phpbar.de **
  Informationen: http://www.phpbar.de
  http://lists.phpbar.de/mailman/listinfo/php

php::bar PHP Wiki   -   Listenarchive