Zum Inhalt springen

php -> id erhöhen


Empfohlene Beiträge

ich habe mit my-sql eine usertabelle.

die id wird mit auto_increment automatisch um eins erhöht.

problem: ich habe z.b. 8 user.

user nr. 8 meldet sich wieder ab.

wie mache ich es, dass die nächste anmeldung die id 8 bekommt, bis jetzt wird einfach weitergezählt, also 9 ;-(:confused:

Link zu diesem Kommentar
Auf anderen Seiten teilen

Original geschrieben von Valium

Garnicht mit Autoincrement würd ich sagen, am besten schaust Du bevor Du einen neuen Account anlegst mit nem SELECT nach, welches die höchste ID is (oder welche kleinere noch frei is)=

SELECT max(id)+1 as id FROM......

das nimmste dann als nächsten Wert beim anlegen.

Wenn Du es auf diese Art machst, darfst Du aber dann z.B. beim Primary Key kein Auto Increment setzen, weil sonst die Fehlermeldung "duplicate entry" kommen wird.

Link zu diesem Kommentar
Auf anderen Seiten teilen

soweit ich weiß, wird bei einem autoincrement immer weitergezählt. Du kannst daher nicht Lücken wieder auffüllen.

Das ist auch bei Access so.

Was du auch machen kannst, ist als primary key eine x-stellige Zufallszahl generieren und die als Primary Key benutzen. Das würde ich tun, weil, wie du selbst gesehen hast eine fortlaufende Nummerierung keinen Nutzen bringt.

Mit einem Primary Key kannst du eigentlich nicht "arbeiten". Er gibt dir keine weiterführende Information zu einem Datensatz(welche Nummer, etc.).

Das Einzige was ein Primary Key bringt, ist die Eindeutigkeit mit der dieser Datensatz, auch von anderen Tabellen aus (Verknüpfung), identifiziert werden kann.

cu,

Thomas

Link zu diesem Kommentar
Auf anderen Seiten teilen

Original geschrieben von thomee

Was du auch machen kannst, ist als primary key eine x-stellige Zufallszahl generieren und die als Primary Key benutzen. Das würde ich tun, weil, wie du selbst gesehen hast eine fortlaufende Nummerierung keinen Nutzen bringt.

Mit einem Primary Key kannst du eigentlich nicht "arbeiten". Er gibt dir keine weiterführende Information zu einem Datensatz(welche Nummer, etc.).

Das Einzige was ein Primary Key bringt, ist die Eindeutigkeit mit der dieser Datensatz, auch von anderen Tabellen aus (Verknüpfung), identifiziert werden kann.

Was hat eine Zufalls-Zahl denn für einen Vorteil? Ist letztendlich ja auch nur eine eindeutige Identifizierung für den Datensatz - mehr nicht... Der Primary-Key bietet zumindest noch einen kleinen Anhaltspunkt, wieviele Datensätze die Tabelle bereits hinter sich hat...

Link zu diesem Kommentar
Auf anderen Seiten teilen

hallo!

Hm, wenn ich so überlege, würde ich sagen, dass es mehr "Sicherheit" bringt.

Nehmen wir an, du hast einen online-shop und speicherst deine Kundendaten auch in einer Tabelle der MySql Datenbank.

Wenn du als ID für jeden Datensatz eine fortlaufende Nummer benutzt, ist es für jemanden, der einen Weg gefunden hat, über das Webfrontend Kundendaten anzuschauen (z.B. http://www.shop.de/admin/config.php?show=adresse&kundennummer=20) um so leichter, alle Adressen herauszubekommen, als wenn die id, statt in diesem Fall 20, eine 8-stellige Zufallszahl wäre(vielleicht noch mit Zeichen).

Ok, in diesem Fall muss man unterstellen, dass der Shop schlecht programmiert ist. Aber glaub mir, es gibt viele schlecht programmierte Seiten und man sollte jede Möglichkeit nutzen die Sicherheit zu erhöhen.

cu,

Thomas

Link zu diesem Kommentar
Auf anderen Seiten teilen

Original geschrieben von thomee

hallo!

Hm, wenn ich so überlege, würde ich sagen, dass es mehr "Sicherheit" bringt.

Nehmen wir an, du hast einen online-shop und speicherst deine Kundendaten auch in einer Tabelle der MySql Datenbank.

Wenn du als ID für jeden Datensatz eine fortlaufende Nummer benutzt, ist es für jemanden, der einen Weg gefunden hat, über das Webfrontend Kundendaten anzuschauen (z.B. http://www.shop.de/admin/config.php?show=adresse&kundennummer=20) um so leichter, alle Adressen herauszubekommen, als wenn die id, statt in diesem Fall 20, eine 8-stellige Zufallszahl wäre(vielleicht noch mit Zeichen).

Ok, in diesem Fall muss man unterstellen, dass der Shop schlecht programmiert ist. Aber glaub mir, es gibt viele schlecht programmierte Seiten und man sollte jede Möglichkeit nutzen die Sicherheit zu erhöhen.

cu,

Thomas

Stimmt - an sowas hatte ich garnicht gedacht... Aber wie du schon sagst, wenn's sehr um Sicherheit geht, sind sowieso andere Mechanismen anzuraten!

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...