kostenloser Webspace werbefrei: lima-city


Suche auf lima-city

  • in: Letzten tweet in HTML (oder auch PHP) einbinden

    geschrieben von digg

    Hallo
    entweder machst du dazu einen Twitter API Zugang .... https://dev.twitter.com
    und musst mit OAuth Authentication und REST API v1.1 Call die User-Timeline abfragen
    dafür gibt es Twitter oAuth PHP librarys ... z.B. abraham twitter oauth ...

    oder du kannst externe Dienste nutzen, die Dir ein RSS-Feed von Twitter User ausgeben
    z:B:
    http://twitrss.me/twitter_user_to_rss/?user=blockhost

    aber solche externen Dienste sind vielleicht morgen schon nicht mehr verfügbar,
    mit eigenem Zugang zur Twitter API ist es wohl (etwas) stabiler (aber auch aufwendiger)

    je nach dem (ob api oder externer RSS Dienst) musst Du dann halt das
    Ergebnis mit PHP auslesen (json oder xml) und entsprechend ausgeben ...
  • in: Datenbank geht nicht mehr...

    geschrieben von digg

    Hallo

    wenn der Test-Zeitraum (der Datenbank) abgelaufen ist,
    dann wird die DB wohl auch wieder deaktiviert ....

    Du kannst eine (dauerhaft verfügbare) Datenbank
    entweder über Auktionen mit (50) Gulden ersteigern
    oder eine Datenbank im Shop (je DB 2,99 €) kaufen


  • in: Regex Pattern richtig escapen ?

    geschrieben von digg

    zum Thema: Regex Pattern richtig escapen

    gibt es eine vollständige Liste an Zeichen, die in einem Regex Pattern escaped werden müssen,
    wenn man sie als "String" verwenden will ?

    ich kenne diese Liste: http://php.net/manual/en/regexp.reference.meta.php
    bzw auch hier: http://docs.kde.org/stable/de/kde-baseapps/kate/regex-patterns.html

    daraus entnehme ich als Zeichen-Liste:
    ^ $ . [ ] | ( ) ? * + { } \ -


    sind das alle ? ... was ist mit Ausrufezeichen ! oder Raute # ... etc.

    --> vollständige Liste an (Steuer-) Zeichen für Regex Pattern ?
    ... ohne Abkürzungen wie \w für [a-zA-Z0-9] ... oder \s für [ \t\n\r]

  • in: urlencode Fehlerhaft ?

    geschrieben von digg

    Danke, das ist es ... erwartet wird urlencode von UTF-8 String

    habe es noch bischen erweitert, so dass es auch nach Umstellung der Seite auf UTF-8 funktioniert
    (wenn dann Formular-Eingaben auch als UTF-8 ankommen)

    function str2utf8 ($string) { 
    if (mb_detect_encoding($string, 'UTF-8', true) === FALSE) { 
      $string = utf8_encode($string); 
    }
    return $string;


    sonst könnte der $string ja evtl. doppelt utf8 encoded werden

    PS:
    wie soll (kann) ich die Formular-Eingabe sonst noch "filtern"
    damit kein hack-Risiko besteht ....

    Problem ist: es soll auch " als EIngabe möglich sein,
    weil bei Eingabe
    Samsung Galaxy S3

    wird nach jedem Wort einzeln gesucht, also ODER
    damit genau nur dieser String gesucht wird, müsste man eingeben:
    "Samsung Galaxy S3"

    aber mit
    "
    im String hab ich dann wieder Probleme bei der Ausgabe

    habe es bisher so probiert:

    if (isset($_REQUEST['q']) && !empty($_REQUEST['q'])) { 
      $qstr = trim(chop($_REQUEST['q'])); 
      $qstr = stripslashes($qstr);
      $qstr = html_entity_decode($qstr); 
    
      // ---- Anwendung der function siehe oben ---- 
      $qstr = str2utf8($qstr);  // ---- sicherstellen dass String UTF-8 ist 
    
      $url_qstr = urlencode($qstr);   // ---- String fuer Request
      $show_q_str = htmlentities($qstr);  // ---- String fuer Ausgabe
      
    }
    else { 
      $qstr = ''; 
      $url_qstr = ''; 
      $show_q_str = ''; 
    }


    damit ich dann je Verwendung (Request / Ausgabe) verschiedenen Strings habe

    für den REQUEST so
    $parameter .= '&Query='.$url_qstr.'';


    für Ausgabe im Formular so:
    print "Suchwort: <input type=\"text\" name=\"q\" size=\"46\" maxlength=\"100\" value=\"".$show_q_str."\" />\n";


    ohne htmlentities() bekomme ich es nicht hin, das er String mit " wieder augegeben werden kann
    aber das hat zur Folge, dass ich jede Eingabe wieder html_entity_decode() machen muss

    macht das so Sinn, oder gibt's "bessere" Lösung - Sonderzeichen
    "
    in User-Eingabe
    so dass es auch mit dem " wieder in HTML (formular input text value) ausgegeben wird ... ?

  • in: urlencode Fehlerhaft ?

    geschrieben von digg

    Hallo
    Wenn ich String für GET anfragen codieren will, komme ich nicht auf die "richtige" codierung ?

    BSP 1:

    $string1 = "Loydd´s"; 
    $encstr1 = urlencode($string1); 
    
    echo "<br />".$encstr1."\n";


    mit urlencode() erhalte ich:
    Loydd%B4s


    aber laut dem Tool: http://meyerweb.com/eric/tools/dencoder/
    ist es anders richtig:
    Loydd%C2%B4s

    und die GET-Abfrage funktioniert auch nur mit dieser Variante richtig


    BSP 2:

    $string2 = "Bücher"; 
    $encstr2 = urlencode($string2); 
    
    echo "<br />".$encstr2."\n";


    mit urlencode() erhalte ich:
    B%FCcher


    aber laut dem Tool: http://meyerweb.com/eric/tools/dencoder/
    ist es anders richtig:
    B%C3%BCcher

    und die GET-Abfrage funktioniert auch nur mit dieser Variante richtig

    --> was läuft da bei urlencode() falsch
    bzw.. wie komme ich auf die "richtige" url-codierung ???


    Danke!
  • in: Leerzeichen zwischen Worte einfügen?

    geschrieben von digg

    Hallo
    mir ist schon klar, dass PHP nicht "zaubern" kann, aber auf Webspace habe ich nunmal kein C(++)
    und dass Fehler in Text wie ""In diesem Satz fehltein Leerzeichen." wohl nicht behoben werden können,
    weil wie (ohne Wörterbuch) soll PHP da erkennen, das "fehltein" eigentlich "fehlt ein" heissen soll.
    sowas erwarte ich ja garnicht ...

    Das von hackyourlife sieht ja schon ganz gut aus

    $text = preg_replace('/(\\.|,|;|\\?|!|:)([a-zA-Z])/', '\\1 \\2', $text);
    $text = preg_replace('/([a-z])([A-Z])/', '\\1 \\2', $text);


    frage mich dabei nur, warum .(Punkt) und ? (Fragezeichen) gleich doppelt escaped sind
    ... genügt da nich einmal \ (Backslash) davor ?

    da ein Leerzeichen ja auch nach einer Zahl fehlen kann,
    könnte man doch die Pattern so erweitern : (?)
    $text = preg_replace('/(\\.|,|;|\\?|!|:)([a-zA-Z0-9])/', '\\1 \\2', $text);
    $text = preg_replace('/([a-z0-9])([A-Z])/', '\\1 \\2', $text);


    und warum ist es doppel-escaped mit \\ und nicht nur nur mit \

  • in: Leerzeichen zwischen Worte einfügen?

    geschrieben von digg

    Hallo
    ich habe Texte, bei denen manchmal kein Leerzeichen zwischen zwei Worten oder am Satz-Ende ist

    wie kann ich (mit PHP) den Text so umwandeln,
    dass wenn auf einen Klein-Buchstabe oder auf ein Satzzeichen direkt ein Gross-Buchstabe folgt
    dann dazwischen ein Leerzeichen einfügen.

    BSP: Mein Hut der hat vierEcken. ---> Mein Hut der hat vier Ecken.
    BSP: Ist das ein Hut?Oder ein Helm? ---> Ist das ein Hut? Oder ein Helm?
    BSP: Hast Du einen Hut,bist du gut. ---> Hast Du einen Hut, bist du gut.
    usw.

    also immer wenn Großbuchstabe oder Satzzeichen "direkt" auf ein Nicht-Leerzeichen folgt
    dann dazwischen ein Leerzeichen einfügen ... evtl mit einem preg_replace() ... aber wie?

    mit Satzzeichen meine ich: punkt, komma, semikolon, fragezeichen, ausrufezeichen, doppelpunkt ... etc...
    . , ; ? ! :


    PS: Sonderfall wären noch Klammern, also bei ( vorher ein Leerzeichen und bei ) danach

    Danke!
  • in: Header Cache-Control no-transform ?

    geschrieben von digg

    ok, Danke

    aber ich habe trotz der .htaccess immernoch das Problem,
    dass auf der Seite nicht immer die aktuellen Daten angezeigt werden.

    Wenn ich nach einer Änderung in der DB (MySQL)
    danach wieder auf die Liste schaue, dann werden dort trotzdem die "akten" Werte angezeigt
    obwohl die "neuen" Daten in der DB eingetragen sind, und die Liste per SELECT neu gelesen wird.
    stehen in der Liste (HTML-Ausgabe des MySQL-Result) noch die "alten" Werte
    erst wenn ich die Brower-Seite aktualisiere (F5) dann stehen da auch die aktuellen Werte

    also funktioniert das No-Cache mit .htaccess nicht wirklich
    aber wie sonst kann ich es machen, dass die Ausgabe NICHT aus Cache kommt
    sondern immer die aktuellen Werte ausgegeben werden ?
  • in: Header Cache-Control no-transform ?

    geschrieben von digg


    das ist doch aber eine .NET Doku / Info,
    ist ja nicht gesagt, das bei PHP das gleiche gilt

    schlechte Übersetung einer MSN Seite als Antwort auf eine PHP-Frage ... naja (hüstel)

    und was bitte heisst
    Ob ein Cache oder ein Proxy keinen Aspekt Entität BODYs geändert werden dürfen.


    WIe soll ein Proxy (oder sonst ein Zugriff auf eine Webseite) den BODY ändern?!
    keine Ahnung (und mir auch egal) was da bei .NET abgeht, mir gehts ja um PHP

    also mit php header Cache-Control stellt man doch das Verhalten des Browser ein,

    daher nochmal die Frage, was (in PHP !) mit set ... Cache-Control ... no-transform
    erreicht werden soll, bzw, verhindert werden soll,
    und ob es für No-Cache header (Seite Laden ohne Cache) nötig oder sinnvoll ist

    Danke
  • in: Zähler

    geschrieben von digg

    auch die Zeile ist so nicht ganz richtig,

    if ($insert == true) {echo "Ok";}else {echo "Fail";}


    auch wenn's wahrscheinlich keinen Fehler ergibt
    bei bool Prüfung (true/false) nimmt man === (drei mal = Zeichen)

    if ($insert === true) {echo "Ok";}else {echo "Fail";}


    willst Du wirklich jeden Aufruf speichern,
    oder je IP nur alle x Minuten (Counter mit IP-Sperre) ?
    dann musst Du vor Speichern prüfen, ob die IP schon in Tabelle steht
    und auch, ob die Zeit seit letzter Speicherung schon lange genug her ist

  • in: falsches Datum in Javascript ?

    geschrieben von digg

    oh ja, Danke

    bei getDate() habe ich nicht geschaut, weil ich von PHP gewohnt bin, das date() das "ganze" Datum behandelt, dass man in Javascript mit getDate() den Tag im Monat bekommt, ist die Lösung, Danke !

    hier nochmal der verbesserte Code:

    <html>
    <head>
    <title>Datum und Uhr</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    
    <script type="text/javascript">
    <!--
    function start_uhr() {
    	show_uhr();
    	window.setInterval("show_uhr()", 1000);
    }
    
    function show_uhr() {
    
    var now = new Date();
    
    var year   = now.getFullYear();  // Jahreszahl 4-Stellig
    var month  = now.getMonth();     // Array-Wert Monat 0 bis 11
    var zmonth = (month+1);          // Zahlenwert Monat 1 bis 12
    var wday   = now.getDay();       // Array-Wert Wochentag 0 bis 6
    var day    = now.getDate();      // Zahlenwert Tag im Monat 1 bis 31
    
    
    var Wochentag = new Array("Sonntag", "Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag");
    var Monattext = new Array("Januar", "Februar", "M&auml;rz", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember");
    
    var hours   = now.getHours();    // Zahlenwert Stunden 0 bis 23
    var minutes = now.getMinutes();  // Zahlenwert Minuten 0 bis 59
    var seconds = now.getSeconds();  // Zahlenwert Sekunden 0 bis 59
    
    var thetime = "";
    
    	thetime += "Datum: "; 
    	thetime += "" + Wochentag[wday] + ", "; 
    	thetime += (day < 10) ? "0" + day + "." : day + ".";
    	thetime += (zmonth < 10) ? "0" + zmonth + "." : zmonth + ".";
    	thetime += " (" + Monattext[month] + ") "; 
    	thetime += year + " ";
    	
    	thetime += "... Zeit: "; 
    	thetime += (hours < 10) ? "0" + hours + ":" : hours + ":";
    	thetime += (minutes < 10) ? "0" + minutes + ":" : minutes + ":";
    	thetime += (seconds < 10) ? "0" + seconds : seconds;
    	thetime += " Uhr"; 
    
    	element = document.getElementById("datumausgabe");
    	element.innerHTML = thetime;
    }
    
    //-->
    </script>
    
    
    <style type="text/css">
    <!--
    #datumausgabe { 
      font-family: "Courier New", Courier, mono; 
      font-size: 14px; 
      color:#003366;
    }
    -->
    </style>
    
    </head>
    
    <body onload="start_uhr();">
     <span id="datumausgabe"></span>
    </body>
    
    </html>


    gibt es noch eine andere Möglichkeit das Ding ohne
    <body onload="start_uhr();">
    zu starten ?

    nochwas:
    per JS wird ja mit new Date() das Datum vom Client genommen.

    wie kann ich als Datum die Server-Zeit nehmen ?
    bzw. gibt es eine (externe) Atom-Uhr, von der man das "genaue" aktuelle Datum holen kann ?
    so, dass immer die richtige Uhrzeit angezeigt wird, unabhängig von Client- oder Server-Zeit?

    Danke!
  • in: falsches Datum in Javascript ?

    geschrieben von digg

    Hallo

    ja, das ist schon klar, das ich einfach mit +1 bei month und day reparieren kann

    var month = (now.getMonth()+1);
    var day = (now.getDay()+1);


    wenn ich das mache, dann stimmt zwar das Datum als Zahl,
    aber der Text für Monat und Tag stimmt dann nicht mehr,

    also füge ich ein Dummy-Element ein, weil Monat 0 und Tag 0 gibt es ja nicht

    var Wochentag = new Array("x", "Sonntag", "Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag");
    var Monattext = new Array("x", "Januar", "Februar", "M&auml;rz", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember");


    aber eigentlich ist das so ja auch Quatsch,
    denn welchen Text soll sich das script am 24,07. holen,
    es gibt ja kein 24tes Element in Wochentag ???

    also gibt mir getDay() nicht den Tag als Zahlenwert, sondern den Wochentag
    beginnend mit 0 = Sonntag bis 6 = Samstag ???

    ...oOo .. steht ja auch in der DOKU: getDay() (Wochentag ermitteln)

    ist halt auch grad Zufall, dass der 04.07.2012 ein Mittwoch ist und somit 3 als Wochentag ergibt

    wie komme ich denn an den aktuellen Tag im Monat (als Zahlenwert, also z.B. 24) ?

    bei Monat ist es noch "machbar" mit dem Array Wert (0 = Januar, 1 = Februar, etc)
    aber bei Wochentage gehts ja nur bis 7 (bzw. 0 bis 6), ich brauche aber Tag im Monat als Zahl

    oder wie sonst hier das Datum und Uhrzeit formatiert ausgeben ?

    Danke
  • in: falsches Datum in Javascript ?

    geschrieben von digg

    Hallo

    ich habe ein kleines JS um aktuelles Datum und Uhrzeit anzuzeigen,

    leider bekomme ich im Datum bei Tag und bei Monat immer falsche Zahlen
    es wird immer aktueller Tag minus 1 und aktueller Monat minus 1 angezeigt ??

    also heute ist: 04.07.2012 aber in Ausgabe steht : 03.06.2012

    hier der Code:
    <html>
    <head>
    <title>Datum und Uhr</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    
    <script type="text/javascript">
    <!--
    function start_uhr() {
    	show_uhr();
    	window.setInterval("show_uhr()", 1000);
    }
    
    function show_uhr() {
    
    var now = new Date();
    
    var year = now.getFullYear();
    var month = now.getMonth();
    var day = now.getDay();
    
    var Wochentag = new Array("Sonntag", "Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag");
    var Monattext = new Array("Januar", "Februar", "M&auml;rz", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember");
    
    var hours = now.getHours();
    var minutes = now.getMinutes();
    var seconds = now.getSeconds();
    
    var thetime = "";
    
    	thetime += "Datum: "; 
    	thetime += " " + Wochentag[day] + " "; 
    	thetime += (day < 10) ? "0" + day + "." : day + ".";
    	thetime += (month < 10) ? "0" + month + "." : month + ".";
    	thetime += " " + Monattext[month] + " "; 
    	thetime += year + " ";
    	
    	thetime += "Zeit: "; 
    	thetime += (hours < 10) ? "0" + hours + ":" : hours + ":";
    	thetime += (minutes < 10) ? "0" + minutes + ":" : minutes + ":";
    	thetime += (seconds < 10) ? "0" + seconds : seconds;
    	thetime += " Uhr"; 
    
    	element = document.getElementById("datumausgabe");
    	element.innerHTML = thetime;
    }
    
    //-->
    </script>
    
    </head>
    
    <body onload="start_uhr();">
      <span id="datumausgabe"></span>
    </body>
    
    </html>



    warum bekomme ich im Datum am 04.07.2012 als Ausgabe: 03.06.2012
    also bei Tag und Monat sind die Zahlen jeweil um 1 zu wenig (in der Vergangenheit)
    aber der Wochentag und Monattext sind richtig ?!
    ?

  • in: Header Cache-Control no-transform ?

    geschrieben von digg

    Hallo

    was bewirkt dieses no-transform

    Bsp .htaccess
    Header set Cache-Control "no-cache, no-store, must-revalidate, proxy-revalidate, no-transform, max-age=0, post-check=0, pre-check=0"
    Header set Pragma "no-cache"


    in vielen Beispielen zu Cache-Control ist das no-transform nicht dabei, nur bei manchen,
    (wozu) braucht man das ?

  • in: RegExp um BrowserVersion rauszufinden

    geschrieben von digg

    Hallo

    Du kannst auch die API von useragentstring.com nutzen, um Browser-Infos abzufragen


    habe dazu hier auch was im Forum gefunden im Beitrag: Browsername ohne get_browser()

    weiß nicht ob das besser ist als eigenes Regex
    aber da ist zumindest eine relativ umfangreiche Datenbank mit bekannten Browser-Strings

  • in: Rest-Laufzeit einer Session ausgeben?

    geschrieben von digg

    ahh Danke

    davon ausgehend müsste ich dann die Funktion send mit meinen Formularfeldern erweitern

    und dann noch was bauen, was send() alle x Minuten selber aufführt

    geht das auch bei Drop-Down Felder? .... in JS function send()

    var category = document.getElementById('form_cat');

    für

    <select name="cat" id="form_cat">
    <option value="category_nr1">Kategorie-Name1</option>
    <option value="category_nr2">Kategorie-Name2</option>
    <option value="category_nr3">Kategorie-Name3</option>
    </select>

    also den aktuell (vom User) ausgewählten option-Wert in JS var category ablegen ?

  • in: Style Tag (Mehrere Styles in einem Attribut?)

    geschrieben von digg

    ich glaub :hover ist dafür kein gutes Beispiel,
    zum Einen, weil :hover im IE nur bei <a> Tags funktioniert
    zum Anderen, weil :hover "nur" ein Selektor eines Elements und kein eigenständiger Style ist

    wie hackyourlife ja erklärt hat:
    hackyourlife schrieb:
    CSS mit Selektoren.

    .container
    und
    .container:hover
    wird automatisch zugeordnet sobald du
    <div class="container">
    schreibst, da das :hover nur auf "container" angewendet wird.


    aber mal das BSP mit Hintergrund und Text-Farben

    .bg_dunkel {
    background:#000000;
    }

    .bg_hell {
    background:#FFFFFF;
    }

    .txt_dunkel {
    background:#000000;
    }

    .txt_hell {
    background:#FFFFFF;
    }


    für Anwenung von 2 Klassen einfach in class="" beide durch Leerzeichen getrennt rein schreiben

    <div class="bg_dunkel txt_hell"> Weißer Text auf schwarzem Hintergrund </div>
    
    <div class="bg_hell txt_dunkel"> Schwarzer Text auf weißem Hintergrund </div>


    geht auch mit ID und Klasse gemischt

    #dunkel {
    background:#000000;
    }

    #hell {
    background:#FFFFFF;
    }

    .txt_dunkel {
    background:#000000;
    }

    .txt_hell {
    background:#FFFFFF;
    }


    für Anwenung von Klasse und ID in einem Element einfach in beide normal zuweisen

    <div id="dunkel" class="txt_hell"> Weißer Text auf schwarzem Hintergrund </div>
    
    <div id="hell" class="txt_dunkel"> Schwarzer Text auf weißem Hintergrund </div>


    aber zwei IDs in einem Element machen glaub keinen Sinn :)


    bei Selector (dynamische Pseudo-Klassen) wie a:hover oder p:first-letter
    brauchst Du keinen extra-Style definieren, die greifen "dynamisch"
    also für die angegebene Klasse bzw. für die ID (siehe BSP von hackyourlife oben)



    EDIT .... ahhh .... Du willst :hover auf nicht-Link <a> Elemente anwenden ??? also z.B. auf <div>

    die Pseudo-Klasse (selector) :hover ist eigentlich nur für <a> TAGs gedacht (links)
    viele Browser können es auch nur dort anwenden

    damit .container:hover { ... } geht kann man aber schon was tricksen

    es gibt sowas wie "Whatever:hover" als .htc ... (siehe: http://www.google.de/search?q=hover+htc)
    oder evtl auch was in jQuery oder ähnliches
    also quasi per JavaScript den :hover -Effekt auf alle Elemente anwendbar gemacht


  • in: Rest-Laufzeit einer Session ausgeben?

    geschrieben von digg

    jo, das ist natürlich ne Idee,
    einfach alle paar Minuten den Login (per Ajax im Hintergrund) auffrischen

    dadurch entsteht zwar bischen Traffic,
    aber so wäre sicher gestellt, dass User-Eingaben nicht "verloren" gehen,
    wenn dem User was dazwischen kommt

    BSP:
    ... User schreibt einen Beitrag ...
    ... bekommt Telefon-Anruf ... soll jemanden abholen fahren
    ... lässt den angefangenen Beitrag offen, fährt zum Abholen und isst noch ein Eis
    ... kommt nach 3 Stunden wieder und kann dann Beitrag weiter schreiben und speichern

    ohne Session "auffrischen" (im Hintergrund) wären die Eingaben verloren,
    weill in der Zwischenzeit die Session abgelaufen wäre, und er müsst von vorn anfangen

    aber wer lässt einen angefangenen Beitrag schon 3 Stunden offen
    und meist kommt Energiesparmodus vom PC dazwischen und PC geht in den Ruhezustand,
    dann bringt Session "auffrischen" auch nix ....

    aber (IDEE) ... ich könnte ja den Beitrag selber per Ajax alle 2 Minuten "zwischenspeichern"
    und wenn User nicht selber auf Speichern geklickt hat, und ausgeloggt wurde (Session timeout)
    dann bekommt er beim nächsten Login die Meldung, dass da noch ein nicht fertiger Beitrag ist,
    und er jetzt da weiter machen kann, wo er aufgehört hat ... (bzw. beim letzten Speicher-Zeitpunkt)

    also für den Beitrag einen neuen Status einführen,
    ob vom User selbst gespeichert (veröffentlicht) wurde,
    oder ob "nur" vom System zwischengespeichert, also Beitrag noch in Bearbeitung

    ich kenne das Problem selber von anderen Seiten (auch Foren)
    manchmal braucht man ja etwas länger um einen Text zu verfassen, auch wenn mal was "dazwischen" kommt
    und bis man soweit ist und Speichern will, ist der Login nicht mehr "aktiv" und die ganze mühsame Eingabe ist dann verloren, und man müsste beim nächsten Login wieder bei NULL anfangen .... was (als User) dann sehr frustrierend ist.

    Mit so einem "alle x Minuten zwischenspeichern" könnte man zumindest auf die letzte Zwischen-Speicherung zurückgreifen und den Text ab da "weiter" schreiben, und muss nicht nochmal ganz von vorne anfangen ...

    in der DB-Tabelle für Beitrag zwei neue Felder machen (Speicher-Status und Zeitpunkt) ist dabei kein Problem,
    aber wie bekomme ich den Inhalt aus Formular (mehrere Felder) zum Zwischen-Speichern ohne Submit
    also muss sich Ajax die "aktuellen" Inhalte aus den Feldern selber holen .... das könnte ich Hilfe brauchen :)


  • in: Rest-Laufzeit einer Session ausgeben?

    geschrieben von digg

    hackyourlife schrieb:
    Wozu bräuchtest du denn dieses "Timeout für einzelne Variablen"?


    naja, ich dachte halt, das diese Laufzeit nicht jedesmal neu startet
    und wollte für eingeloggte User eine Info ausgeben: Dein Login ist noch x Minuten aktiv

    aber (wie ich jetzt gelernt habe) startet ja bei jedem session_start() der Timeout wieder neu
    also brauche ich das quasi dann doch nicht

    oder ich mach die Ausgabe dann hat mit der Info:
    Du musst innerhalb der nächsten x Minuten etwas "tun" (klicken) sonst bist du ausgeloggt

    Quasi ein Countdown, der anzeigt wie lange der User "inaktiv" bleiben kann,
    bis der Login nicht mehr "gültig" ist,

    Und so eine Ausgabe müsste dann wohl als JavaScript (Countdown) laufen,
    da es ja die Zeit "ohne" Aktivität betrifft, also geht Ausgabe von PHP da nicht

    Wenn dann Countdown abgelaufen ist,
    könnte man auf Seite weiterleiten ... "LogOut wegen Inaktivität" ... oder so

    damit der User dann nicht noch Ablauf noch versucht was zu speichern,
    aber die Session garnicht mehr aktiv ist, und seine Eingabe "verloren" geht.

  • in: Rest-Laufzeit einer Session ausgeben?

    geschrieben von digg

    wenn bei jedem session_start() die Laufzeit wieder zurückgesetzt wird,
    dann würde eine Session ja unendlich laufen, solange der User innerhalb der Laufzeit aktiv bleibt ?!

    weil um zu Prüfen, ob die Session einen bestimmten Wert hat, braucht man ja auch session_start()

    ohne session_start() kann man ja keine Abfrage machen wie
    if (isset($_SESSION['pwx']) && $_SESSION['pwx'] == 'geheim') { 
    echo "<p>Passwort ist OK</p>\n"; 
    }
    else { 
    echo "<p>Passwort ist falsch</p>\n"; 
    }


    aber Lebensdauer / Laufzeit heisst für mich, sobald ich der Wert für $_SESSION['pwx'] vergebe,
    dann kann ich nur 180 Minuten auf diese Variable $_SESSION['pwx'] zugreifen,
    danach sollte diese Session nicht mehr existieren,
    also ... isset($_SESSION['pwx']) sollte dann false ergeben, ... oder nicht ?

  • in: Rest-Laufzeit einer Session ausgeben?

    geschrieben von digg

    Hallo

    wenn ich eine SESSION starte, dann hat die ja eine bestimmte Lebensdauer,

    aber wie bekomme ich den Wert, wie lange diese Lebensdauer noch anhält ?

    wenn ich Ausgabe mache:

    echo "<p>Dauer: " . session_cache_expire() . "</p>\n";


    bekomme ich immer 180 (ist wohl in Minuten) als Ergebnis,
    auch wenn die Session schon 10 Minuten läuft ....

    wie kann ich Ausgabe machen, die mir die Rest-Lebensdauer ausgibt,
    also dass nach 10 Minuten in der Ausgabe steht: sowas wie: noch 170 Minuten

    muss ich dazu einen timestamp-Wert beim Start der Session speichern,

    kann ich per PHP (interne Funktion) die Rest-Lebensdauer direkt auslesen ?
    + wann (timestamp) die aktuelle Session gestartet wurde oder
    + wieviel von den 180 Minuten schon "verbraucht" sind oder
    + wie lange sie noch gültig ist (als Sekunden oder Timestamp)

    um auf Session-Inhalte zugreifen zu können,
    muss ich ja immer auch session_start() machen,
    aber wird dadurch die Laufzeit auch jedesmal neu gestartet? .... nein, oder?
    wenn das so wäre, würde ja eine Laufzeit kaum einen Sinn machen.
    aber session_cache_expire() gibt mir immer 180 als Wert aus ???

    --> Wie kann ich Rest-Laufzeit der Session anzeigen, zum Beispiel bei Login
    BSP: .... Dein Login ist noch für 5668 Sekunden aktiv
    bzw: .... Dein Login ist noch für 1 Stunde 34 Minuten und 28 Sekunden aktiv

    die Formatierung der Zeit Angabe (Stunden/Minuten/Sekunden) ist jetzt nicht das Problem,
    sondern erstmal, wie ich überhaupt auf die Rest-Lebensdauer (Wert in Sekunden) komme

    gibt es dazu eine PHP interne Funktion, die mir Start-Zeit oder Rest-Zeit ausgibt
    ... oder muss ich den timestamp beim Login (beim Start der Session) speichern?

    gibt es eine fertige Funktion dafür (Beispiel) ?
    Danke

Login zum Webhosting ohne Werbung!