Ergebnis 1 bis 9 von 9

Thema: [Tutorial] Mediadaten Cachen

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Avatar von Gremlin
    Registriert seit
    05.07.2006
    Beiträge
    5.206
    Nein das ist nicht korrekt kannst du mal deine mediadaten.php posten? Gerne auch per PM.

    Gruß
    Gremlin
    Diskutiere nie mit Idioten - sie holen Dich auf ihr Niveau und schlagen Dich dort mit Erfahrung!



  2. #2
    Erfahrener Benutzer
    Registriert seit
    22.12.2006
    Beiträge
    526
    Wer das ganze auch mit php4 benutzen will, der sollte folgendes in die Datei einfügen:
    PHP-Code:
    if (!function_exists('file_put_contents')) {
     function 
    file_put_contents($filename$data) {
      if ((
    $h = @fopen($filename'w')) === false) {
       return 
    false;
      }
      if ((
    $bytes = @fwrite($h$data)) === false) {
       return 
    false;
      }
      
    fclose($h);
      return 
    $bytes;
     }


  3. #3
    Erfahrener Benutzer Avatar von Dreamerweb
    Registriert seit
    19.12.2006
    Beiträge
    373
    Zitat Zitat von Gremlin Beitrag anzeigen
    Nein das ist nicht korrekt kannst du mal deine mediadaten.php posten? Gerne auch per PM.

    Gruß
    Gremlin
    Hallo

    Dank Dir jetzt läuft es auch bei mir. War mein eigener Fehler.

    Hatte diese Zeile

    PHP-Code:
    file_put_contents('dynamic_cache/mediadaten.txt'ob_get_flush() ); 
    nicht ans ende sondern noch am Anfang stehen.

  4. #4
    Benutzer1699
    Gast
    Ich halte 15 Minuten für übertrieben, halbe Stunde oder Stunde wäre eine Zeit mit der Server und Besucher denke ich gut leben können *g* - aber das wollte ich gar nicht.

    Mir ist noch die Idee gekommen, dass man die Generierung des Nachts oder des Tages (je nach Userverhalten) häufiger bzw. seltener laufen lassen könnte.
    Optimalerweise automatisch per Cronjob, damit man nicht auf einen Aufruf angewiesen ist.

    @Gremlin:
    Daumen hoch für die Mindestvorraussetzung von PHP5 hehe.

  5. #5
    Erfahrener Benutzer Avatar von Gremlin
    Registriert seit
    05.07.2006
    Beiträge
    5.206
    Daumen hoch für die Mindestvorraussetzung von PHP5 hehe.
    PHP4 hab ich nicht und will ich nicht deshalb PHP5 *g Holstenjungs hat aber ja ein Workaround geschrieben
    Diskutiere nie mit Idioten - sie holen Dich auf ihr Niveau und schlagen Dich dort mit Erfahrung!



  6. #6
    Erfahrener Benutzer
    Registriert seit
    22.12.2006
    Beiträge
    526
    Das habe ich nicht geschrieben, diese Funktion ist die Standardfunktion für php4. Also für die Leute die es da benutzen wollen. Das ist auch zuhauf bei Google zu finden oder sogar in einem PHP Handbuch.

    MfG

  7. #7
    Erfahrener Benutzer Avatar von SebbyPHM
    Registriert seit
    17.07.2006
    Beiträge
    844
    da ich das so ca auch benötige zukünfitg, hier mal meine kleine sache
    >> damit verschwindet diese elendige if-else-bdingung =)


    php5:
    PHP-Code:
    <?php
    function start_cache ($name$time=900) {
        if (!
    file_exists ('cache/'.$name) || filemtime ('cache/'.$name) < (time()-$time)) ob_start ();
        else {
            
    file_get_contents ('cache/'.$name);
            require (
    'lib/footer.php'); // fuer das VMS den Footer einbinden
            
    exit; // ... und anschliessen alles beenden
        
    }
        
    $GLOBALS['cachename'] = $name;
    }

    function 
    end_cache () {
        if (isset (
    $GLOBALS['cachename'])) file_put_contents ('cache/'.$GLOBALS['cachename'], ob_get_flush ());
    }
    ?>

    php4:
    PHP-Code:
    <?php
    function start_cache ($name$time=600) {
        if (!
    file_exists ('cache/'.$name) || filemtime ('cache/'.$name) < (time()-$time)) ob_start ();
        else {
            echo 
    implode (''file('cache/'.$name));
            require (
    'lib/footer.php'); // fuer das VMS den Footer einbinden
            
    exit; // ... und anschliessen alles beenden
        
    }
        
    $GLOBALS['cachename'] = $name;
    }

    function 
    end_cache () {
        if (isset (
    $GLOBALS['cachename'])) {
            
    $f = @fopen ('cache/'.$GLOBALS['cachename'], 'w') or die ('Kann Cache-Datei nicht oeffnen.');
            
    fwrite ($fob_get_contents ());
            
    fclose ($f);
        }
    }
    ?>
    aufruf:
    PHP-Code:
    <?php
    start_cache 
    ('test'10);
    echo 
    'Diese Datei wurde das letzte mal am '.date('d.m.Y').' um '.date('H:i:s').' Uhr ge&auml;ndert.';
    end_cache ();
    ?>
    Mit freundlichem Gruß
    SebbyPHM




Ähnliche Themen

  1. [Tutorial] Statspicker mit Cache
    Von Gremlin im Forum [HD] Programmieren
    Antworten: 30
    Letzter Beitrag: 29.04.2011, 21:05
  2. Zugangsanfrage VMS-Tutorial.de
    Von eaxo im Forum Support zu Addons & Erweiterungen
    Antworten: 1
    Letzter Beitrag: 09.01.2010, 17:07
  3. tutorial zum faken?
    Von didith1207 im Forum Talk, talk, talk...
    Antworten: 9
    Letzter Beitrag: 08.12.2008, 21:22
  4. CSS uns JavaScript cachen
    Von Benutzer1699 im Forum [HD] Programmieren
    Antworten: 1
    Letzter Beitrag: 30.05.2008, 13:59

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •