Maximale Einträge in mysql datenbank pro User

  • Hallo erstmal,
    ich schreibe ein kleines Tool in dem User daten eintragen können und nur die Admins diese lesen können.
    Soweit ist alles kein Problem.
    Ich möchte aber eine kleine Statiskit für die User und die Admins haben welche Erfloge dieUser gemacht haben. Dieses Statiskik wollte ich auf 80 Beiträge pro User begrenzen damit es nicht zuviele Daten werden.
    Wie kann ich nun dem Srcipt sagen das wenn 80 Einträge erreicht sind wieder den 1 eintrag über schreibt also Quasi.
    MYSQL Query
    select
    count(*) as anzahl
    from
    daten
    where
    user = $_SESSION['user']

    ..... hier brauch ich hilfe.......
    schon mal danke für jeden Hilfe versuch

  • ich glaube da hast du dir ganz schön was vorgenommen;

    also zuerstmal brauchst du ja eine id als primary_key, damit du jeden eintrag einzelnd anwählen kannst
    -> standart 0 (null als zahl)

    dann brauchst du m.e. eine 2. tabelle, in der du einfach speicherst, welcher eintrag als letztes überschrieben wurde.

    dann kannst du mit count() die anzahl der einträge eines user herausfinden
    wenn diese gleich 80 ist, wird kein neuer datensatz angelegt, sondern derjenige mit der ID+1 (aus der hilfstabelle) wird überschrieben

    einziges problem bei der sache:
    herausfinden, welche id als letztes überschrieben wurde und welche id als nächstes folgt
    da muss man vll nochmal überlegen, bin ich aber im mom zu fertich für (grade informatik arbeit hinter mir und totall müde ^^)

    hoffe das konnte dir erstmal helfen
    mfg

    EDIT:
    is mir grade als idee gekommen:
    du kannst ja ne einfache abfrage machen (welche id als nächstes kommt)

    SELECT ID
    FROM anzahl
    WHERE user = "username"
    AND ID > (SELECT ID FROM next_id WHERE user = "username")
    ORDER BY ID ASC
    LIMIT 1;

    so in etwa, musst du halt anpassen ^^

    Sei immer du selbst. Außer du kannst Batman sein. Sei immer Batman!

  • Danke endlich simmt der Ansatz es müssen nur noch kleine Sachen gemacht werden.
    Endlich =)