Abfrage in einer Datenbank nach aktuellen datum ?????
Helmut
- asp.net
0 Helmut0 Popie
0 Viennamade
Ich habe eine Datenbank wo ich die besucher speichere mit folgenden werten:
ID = Eine Autowert nummer
IP = die IP Adresse des Besuchers (komplett nicht geteilt)
Datum
Uhrzeit
Online = Ja/Nein
Jetzt wenn der besucher ein zweites mal drauf geht speichert er ja wieder alles drauf (soll er doch auch). Ich möchte jetzt wissen wann diese IP - Adresse das letzte mal drauf war.
Also so das aktuellste Datum aber nicht das jetzige und bei der Uhrzeit auch. Wo bei es bei datum ein kleines problem gibt wenn der Besucher ein zweites mal am gleichen Tag drauf geht.
Wie kann ich das in ASP verwirklichen habt ihr irgend welche tipps oder gibt es schon so eine Lösung.
Hintergrund:
Das ganze läuft auf einem Intranet mit statischen IP bei den Clients.
Ich möcht nämlich wenn es etwas neues gibt (wo der user nicht online war) das er dann einen Hinweis bekommt.
Ich will das auf keinen fall mit Kekse machen.
Ich hoffe es kann mir jemand helfen.
mfg Helmut
Was haltet ihr davon wenn ich das datum und die uhrzeit zerlege in
tt mm jjjj
hh min
und wenn ich alles einzeln abfrage also zuerst jjjj dann mm dann tt usw.
Oder habt ihr andere lösungen. Vielleicht mit SQL oder so aber da habe ich sehr wenig ahnung davon.
Die beiden Möglichkeiten, die dir für die Lösung der Aufgabenstellung zur Verfügung stehen hast du ja bereits genannt:
1. du fragst bei jedem Besuch der Seite ein Cookie ab und vergleichst die dort abgespeicherte Zeit des letzten Besuchs mit der aktuellen Zeit
2. du fragst bei jedem Besuch der Seite eine Datenbank ab und vergleichst die dort abgespeicherte Zeit des letzten Besuchs mit der aktuellen Zeit
und speicherst abschließend die aktuelle Zeit als Zeit des letzten Besuchs ab.
Da du Ansatz 1. kategorisch ausschließt, bleibt dir zur Realisierung lediglich Ansatz 2. Da du die für Ansatz 2. notwendigen Grundlagen (Datenbankzugriff) fehlen, bleibt dir nichts anderes übrig, als dir eben diese Grundlagen anzueignen.
Kurz gefasst ein Lösungsweg:
1. z.B. mit MS Access eine Tabelle mit 2 Spalten anlegen
2. auf der Seite mit ASP zunächst aus dem Request-Objekt die IP des Besuchers ermitteln und in eine Variable übernehmen, nennen wir sie strIP.
3. Mit Hilfe der so gespeicherten Variablen ein SQL-Statement basteln, das dann in etwa so aussieht:
strQuery = "SELECT last_visit FROM visits WHERE ip ='" + strIP + "'"
4. Mit diesem Statement die Access-Tabelle befragen (via ADO) und somit den Zeitpunkt des letzten Besuchs von dieser IP Adresse ermitteln.
5. Dann lässt sich mit der Funktion DateDiff() ermitteln, wie lange von der entsprechenden IP nicht mehr auf die Seite zugegriffen wurde.
6. Am Ende mittels eines UPDATE Statements die DB-Tabelle auf den aktuellen Stand bringen.
HTH
Hallo,
ob ich Deinen Text richtig verstehe? Wenn ja, dann würde ich Datum und Uhrzeit in einem Feld (Date-Time-Value) speichern. Beim Besuch werden zuerst die Vorbesuche ausgelesen und eventuell Routinen durchgeführt, der Besuch wird erst danach abgespeichert.
Beste Grüße
Viennamade