Frage zu mysql-Datenbank

Dieses Thema im Forum "Software, Hardware, Programmieren" wurde erstellt von Karlibert, 18 Juni 2007.

  1. HI zusammen,

    ich bastele gerade eine kleine Datenbank in mysql - Eingabe über HTML/PHP.
    Ich habe nun ein Formular, bei dem ich alle möglichen Felder eingebe und über PHP überprüfe. Wenn ich nun alles richtig eingegeben habe, wird dem Ganzen eine id zugewiesen - wird in mysql über autoincrement verwaltet.

    wie schaffe ich es am einfachsten, mir nach erfolgreicher Dateneingabe dieseid anzaigen zu lassen? Reicht größter Wert? - was ist, wenn mehrere Leute mit der Datenbank arbeiten?

    cu
    Volker
     
  2. AW: Frage zu mysql-Datenbank

    Hi!

    Dafür gibts eine Funktion in PHP:

    int mysql_insert_id ( [resource Verbindungs-Kennung] )

    mysql_insert_id -- Liefert die ID einer vorherigen INSERT-Operation


    Chris...
     
  3. AW: Frage zu mysql-Datenbank

    Hi Volker,

    den größten Wert kannst du über SELECT MAX(id) AS id FROM tabelle abfragen. Dies ist aber in Bezug auf Multiuserbetrieb im dümmsten Fall etwas fehlerträchtig.
    Der sicherere Weg ist, nach Einfügen des Datensatzes, die Tabelle nach einem eindeutigen (oder ggf. mehreren) Element(en) des eingefügten Datensatzes zu durchsuchen und auf diesem Weg die id heraus zu finden.
    Die Möglichkeit, das autoincrement der DB zu deaktivieren und manuell per PHP den nächsten Wert zu ermitteln gibt es natürlich auch noch. Dann erübrigt sich die Sucherei.

    Gruß Jens
     
  4. #4 JensB, 18 Juni 2007
    Zuletzt bearbeitet: 18 Juni 2007
  5. AW: Frage zu mysql-Datenbank

    HI!

    da hätte ich es doch fast versäumt, mich für die Hilfe zu bedanken :) Also Danke :D

    Hat alles super geklappt - und mit 2 Nutzern dürfte das auch alles kein Problem sein:)

    Arbeitet man denn dann bei vielen Usern mit Session-Ids? - Nur mal so interessehalber...

    cu
    Volker
     
  6. AW: Frage zu mysql-Datenbank

    Hi Volker,

    die Datenbank hat keine Probleme mit parallelen Zugriffen. Das Problem ist hier eher der Programmierer, wenn er davon ausgeht, dass der letzte Datensatz derjenige ist, den der Benutzer gerade in die DB geschrieben hat, oder ähnliches. :rolleyes: :D

    PHP-Session-IDs (falls du die meinst) dienen im Regelfall dazu, einen Benutzer zu identifizieren, wenn er sich durch die einzelnen Seiten einer Homepage klickt. Zum Speichern in einer DB eignen sie sich, außer zur Benutzerverfolgung, nicht, da sie temporär sind.

    Gruß Jens
     
  7. AW: Frage zu mysql-Datenbank

    HI!

    ja - nur darum geht es - zu erkennen, dass ich das war, der da gerade was geschrieben hat. Also meinetwegen direkt nach dem Absenden einer Buchung die Buchungsnummer zu bekommen.

    cu
    Volker
     
  8. AW: Frage zu mysql-Datenbank

    Ich würde es bestenfalls als absolute Notlösung bezeichnen, da du hier unnötig Daten speicherst, die du nie wieder sinnvoll verwenden kannst.

    :winke: Jens
     
Schlagworte:

Diese Seite empfehlen