2017-05-18 6 views
0

Ich muss ein modales Fenster anzeigen, wenn sich der Benutzer das erste Mal anmeldet, nachdem er sich angemeldet hat, das modale Fenster sollte nicht angezeigt werden.MySQL - Benutzeraktivität verfolgen, um Inhalt nur beim ersten Mal anzuzeigen

Fragen:

ich ein Feld in der Benutzertabelle zu schaffen, denke zu nennen, modal_first_time und Addition der Werte 0 oder 1

0 = Modal nicht 1 = Modal gezeigt gezeigt

So, dass, wenn Sie zum ersten Mal anmelden, führen Sie eine Anmeldung in dieser Tabelle und ändern Sie den Wert von 0 auf 1, so dass Sie dieses modale Fenster nicht mehr anzeigen.

Aber ist das optimal? Was, wenn ich 10 modale Fenster habe, muss ich 10 zusätzliche Felder erstellen?

Es ist gut die Möglichkeit, ein Feld in der Tabelle hinzuzufügen, oder es gibt einige optimale und einfache, die beste wäre eine Sitzungsvariable, aber diese beim Löschen von Cookies oder Computer wechseln würde wieder zeigen.

+1

Meine Empfehlung ist es, eine Tabelle zu erstellen, die speichert: (id, user_id, modal_id, zugegriffen) - also für den Fall, dass ein Benutzer Ihre Website anmeldet und mit 4 modalen Fenstern vorgestellt werden, werden Sie 4 Datensätze einfügen ... Die 'modal_id' ist die eindeutige Kennung für jedes modale Fenster. – andre3wap

Antwort

1

Ich würde vorschlagen, eine "Modal zugegriffen" -Tabelle.

Diese Tabelle würde 4 Spalten enthalten.

UID, UserID, ModalID, accessed 

zu finden, wenn der aktuelle Status eines Modal für einen Benutzer Sie eine SELECT in Ihrem „OnLogin“ Ereignis laufen würde.

Unten finden Sie ein sehr grobes Beispiel dafür, wie diese verwendet werden könnten, für 1 oder viele Modals

SELECT ModalID FROM `SchemaName`.`ModalAccessedTable` 
WHERE UserID = "Bob" 
AND Accessed = 0 

oder eine andere Nutzung

SELECT Accessed FROM `SchemaName`.`ModalAccessedTable` 
WHERE UserID = "Bob" 
AND ModalID = 'ModalName' 

Update-Zugriff Nutzung

UPDATE `SchemaName`.`ModalAccessedTable` 
SET Accessed = 1 
WHERE UserID = "Bob" 
AND ModalID = 'ModalName' 

arbeitet Mit einem Setup wie diesem können Sie jeden einzelnen Eintrag pro Benutzer-ID nach Bedarf auswählen und aktualisieren effiziente Nachschlageffizienz

Seite Hinweis: Angenommen, diese Tabelle wird groß, Sie profitieren erheblich von ordnungsgemäß erstellen mehrspaltigen Indizes.

+0

Vielen Dank –

Verwandte Themen