Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Cookie Ablaufzeit anzeigen
#1
Hi,

ich setze mit php einen Cookie, der nach einer Stunde abläuft. Ich möchte nun dem User die verbleibende Restzeit als Timer anzeigen. Wie macht man das mit js? Hab im Netz nichts passendes gefunden.

Vielen Dank!
Schwarzer Humor ist wie essen, hat nicht jeder.
Zitieren
#2
Kannst du mir mal zeigen, wie du den Cookie erstellt hast?
Wenn man den so erstellt wie es sein soll, musst du an die Zeit dran kommen
https://www.a-coding-project.de/ratgeber...s-arbeiten

Die >Ablaufzeit solltest du dann umwandeln in Sekunden , und dann kannst du da ein Timer runterzählen lassen.
Du könntest beim Speichern des Cookies auch gleich schon Ablaufwert in Timestamp speichern , dann wäre es vielleicht auch einfacher.
Vielleicht gebe es auch nee Möglichkeit mit Session, dafür muss man erstmal wissen, warum du das vorhast , gibt es da einen Grund fü das der User die Ablaufzeit wissen muss?
Hier sind alle meine Lösungen aus allen Foren. Ich helfe auch in Facebook-chat
Zitieren
#3
Ja gerne:
setcookie('shoppinglist', $file, time() +3600);

Im Cookie ist der Pfad zu einer Datei gespeichert, der User soll informiert sein wie lange die Datei noch nutzbar ist.

Für ein Code Beispiel wäre ich ganz dankbar.
Schwarzer Humor ist wie essen, hat nicht jeder.
Zitieren
#4
Ich dachte immer das man das ablaufdatum auslesen kann , aber finde nichts darüber. Wenn das nicht gehen sollte muß man halt die Ablaufzeit im Cookie speichern.

Mit extra Cookie wo die Zeit gespeichert ist könnte man es so machen

<?php
$file='bla/bla/file.php';
setcookie('shoppinglist', $file, time() +3600); 
setcookie('shoppinglist_timer', time() +3600, time() +3600); 
?>
<body>
<p id="zeit"></p>
</body>
<script>
function getCookieValue(a) {
   const b = document.cookie.match('(^|;)\\s*' + a + '\\s*=\\s*([^;]+)');
   return b ? b.pop() : '';
}

console.log(document.cookie);
function getTimestamp(){
    return Math.floor(new Date().getTime() / 1000);
}
var timer=setInterval(function(){
var rest=(getCookieValue('shoppinglist_timer')-getTimestamp());
if(rest>0){
    document.getElementById('zeit').innerHTML='Noch '+rest+' Sekunden gültig';
}else{
    document.getElementById('zeit').innerHTML='ENDE';
    clearInterval(timer);
}
},1000);
</script>


Hier sind alle meine Lösungen aus allen Foren. Ich helfe auch in Facebook-chat
Zitieren
#5
Super, das funktioniert auf jeden fall schonmal.

Wie muss ich die Umrechnung formatieren, dass das als Counter, so aussieht: 00:58:24?
Hab schon einiges probiert + google aber ich kriegs nicht hin :/

Vielen Dank!
Schwarzer Humor ist wie essen, hat nicht jeder.
Zitieren
#6
Hier sind ein paar Beispiele.
https://stackoverflow.com/questions/8471...javascript
Hier sind alle meine Lösungen aus allen Foren. Ich helfe auch in Facebook-chat
Zitieren
#7
Jawohl, habs hinbekommen. Man muss nur nach dem Richtigen suchen^^

Vielen Dank!
Schwarzer Humor ist wie essen, hat nicht jeder.
Zitieren


[-]
Schnellantwort
Nachricht
Geben Sie hier Ihre Antwort zum Beitrag ein.

 

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste