1. Dashboard
  2. Forum
    1. Unerledigte Themen
  3. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team-Mitglieder
    4. Trophäen
    5. Mitgliedersuche
  4. Tutorial Bereich
  • Anmelden
  • Registrieren
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Seiten
  • Forum
  • Lexikon
  • Erweiterte Suche
  1. Informatik Forum
  2. Software und Anwendungen
  3. Tools und Produktivität

if anweisung

    • Problem
  • 4F2E4A2E
  • 29. Januar 2007 um 00:00
  • 4F2E4A2E
    4
    4F2E4A2E
    Mitglied
    Punkte
    165
    Beiträge
    29
    • 29. Januar 2007 um 00:00
    • #1

    Hi! Ich lerne gerade Java und Php programmieren und meine aufgabe ist ein counter zu erstellen. Soweit bin ich gekommen:

    Ich möchte dass die txt Datei erstellt wird falls sie nicht vorhanden ist. Wie mache ich das aber?

    Ich habe mir das so vorgestellt, dass die if anweisung überprüft ob die datei existiert (counter.txt) und falls nicht, dann soll er sie anlegen/erstellen.

    Hoffe das war jetzt gut erklärt :frowning_face:

    PHP
    <?php
    if(counter.txt != nicht existiert){
    $datei = fopen("counter.txt","w+");
    fclose($datei);
    
    
    }
    
    
    $datei = fopen("counter.txt","r+");
    $counterstand = fgets($datei, 10);
    if($counterstand == ""){
    $counterstand = 0;
    }
    $counterstand++;
    echo $counterstand;
    rewind($datei);
    fwrite($datei, $counterstand);
    fclose($datei);
    
    
    ?>
    Alles anzeigen
  • Korrupt
    8
    Korrupt
    Mitglied
    Punkte
    605
    Beiträge
    110
    • 29. Januar 2007 um 00:07
    • #2
    Zitat von 4F2E4A2E

    Ich möchte dass die txt Datei erstellt wird falls sie nicht vorhanden ist. Wie mache ich das aber?


    file_exists(string filename)

    alternativ: fopen(2) mit folgenden mode: w+ oder a+

    *** Ich würde gern die Welt verändern, aber Gott gibt mir den Quelltext nicht ***

  • 4F2E4A2E
    4
    4F2E4A2E
    Mitglied
    Punkte
    165
    Beiträge
    29
    • 29. Januar 2007 um 00:27
    • #3

    Wow, das ging ja schnell! Es schaut jetzt besser aus, aber wie kann ich genau das gegenteil erreichen: nämlich, dass er nachschaut ob die datei existiert und nur dann wenn sie nicht existiert wird eine datei angelegt. Mit if fileDONOTexists?

    PHP
    <?php
    $countertxt = 'counter.txt';
    
    
    if(filexists($countertxt)){
    $datei = fopen("counter.txt","w+");
    fclose($datei);
    
    
    }
    
    
    $datei = fopen("counter.txt","r+");
    $counterstand = fgets($datei, 10);
    if($counterstand == ""){
    $counterstand = 0;
    }
    $counterstand++;
    echo $counterstand;
    rewind($datei);
    fwrite($datei, $counterstand);
    fclose($datei);
    
    
    ?>
    Alles anzeigen
  • mdk
    26
    mdk
    Emeritus
    Reaktionen
    130
    Punkte
    7.120
    Beiträge
    1.390
    • 29. Januar 2007 um 00:31
    • #4
    PHP
    if(!file_exists($countertxt)){

    einfach negieren durch rufzeichen

  • 4F2E4A2E
    4
    4F2E4A2E
    Mitglied
    Punkte
    165
    Beiträge
    29
    • 29. Januar 2007 um 00:39
    • #5

    Ihr seid spitze leute! Hier kann man was lernen.

    PHP
    <?php
    $countertxt = 'counter.txt';
    
    
    if(!file_exists($countertxt)){
    $datei = fopen("counter.txt","w+");
    fclose($datei);
    
    
    }
    
    
    $datei = fopen("counter.txt","r+");
    $counterstand = fgets($datei, 10);
    if($counterstand == ""){
    $counterstand = 0;
    }
    $counterstand++;
    echo $counterstand;
    rewind($datei);
    fwrite($datei, $counterstand);
    fclose($datei);
    
    
    ?>
    Alles anzeigen
  • 4F2E4A2E
    4
    4F2E4A2E
    Mitglied
    Punkte
    165
    Beiträge
    29
    • 3. Februar 2007 um 01:38
    • #6

    Ich möchte versuchen - einfach um zu üben - dass zu jedem besuch ein timestamp dazu gegeben wird. als erstes.

    Bis jetzt bin ich leider nur soweit gekommen:

    Ausgabe:
    -----
    1
    Sa 03 Feb 2007 01:34:07 CET +0100


    Sa 03 Feb 2007 01:34:08 CET +0100


    Sa 03 Feb 2007 01:34:09 CET +0100


    PHP
    <?php
    
    
    setlocale(LC_TIME, "de_DE"); 
    $countertxt = 'counter2.txt';
    $zeitStempel = strftime("<br>%c %z<br><br>");
    
    
    
    
    if(!file_exists($countertxt)){
    $datei = fopen($countertxt, "w");
    fclose($datei);
    }
    
    
    $datei = fopen($countertxt ,"r+");
    $counterstand = fgets($datei, 1000);
    if($counterstand == ""){
    $counterstand = "0";
    }
    $counterstand++;
    $incr = "$counterstand"."$zeitStempel";
    echo $incr;
    rewind($datei);
    fwrite($datei, $incr);
    fclose($datei);
    
    
    
    
    
    
    ?>
    Alles anzeigen

    Also ich würde meine, dass er das nur ein mal macht weil er dann nimma weiss welche zahl gemeint ist das er um 1 erhöhen soll stimmts!?

    ich würde es gerne it nur eine datei lösen.

  • Korrupt
    8
    Korrupt
    Mitglied
    Punkte
    605
    Beiträge
    110
    • 3. Februar 2007 um 19:10
    • #7

    also ich würde den zeitstempel nicht so generieren, sondern als zeit in sekunden seit beginn der unix-zeitrechnung (1.1.1970). kann jederzeit in ein leserliches zeitformat umgerechnet werden.
    befehl: mktime()
    danach würde ich das im folgenden format in die datei schreiben:
    $counterstand\t$timestamp
    anm.: \t = tabulator; möglich wäre auch ein ;
    somit kannst du dann jederzeit die datei optimal parsen.

    *** Ich würde gern die Welt verändern, aber Gott gibt mir den Quelltext nicht ***

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!

Benutzerkonto erstellen Anmelden

Benutzer online in diesem Thema

  • 1 Besucher

Rechtliches

Impressum

Datenschutzerklärung