Informatikwiki

Albert Einstein Gymnasium Reutlingen

Benutzer-Werkzeuge

Webseiten-Werkzeuge


cookies:cookielektion2

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
cookies:cookielektion2 [10.05.2011 20:04] Stefan Gaumcookies:cookielektion2 [17.05.2011 20:40] (aktuell) Stefan Gaum
Zeile 11: Zeile 11:
 ===== Dateien zum Lesen öffnen ===== ===== Dateien zum Lesen öffnen =====
  
-Die Funktion <code php> fopen() </code> mit den Argumenten "Dateiname" und "Modus" öffnet eine serverliegende Datei. Der Modus entscheidet dabei, ob du entweder+Die Funktion 
 +<code php> 
 +fopen()</code> 
 +mit den Argumenten "Dateiname" und "Modus" öffnet eine serverliegende Datei. Der Modus entscheidet dabei, ob du entweder
   * ''r'' =>  **lesen/read**,   * ''r'' =>  **lesen/read**,
   * ''r+'' => **lesen und schreiben**   * ''r+'' => **lesen und schreiben**
Zeile 29: Zeile 32:
 Hier kommt die Funktion  Hier kommt die Funktion 
 <code php> <code php>
-fgets()+fgets();
 </code> </code>
 ins Spiel. Als Argument werden ihr ein Dateizeiger und die maximale Zahl an Bytes übermittelt, welche ausgelesen werden sollen. Bei 10 Byte werden also bis zu neun Stellen gelesen, welche ebenfalls in einer Variablen gespeichert werden müssen. ins Spiel. Als Argument werden ihr ein Dateizeiger und die maximale Zahl an Bytes übermittelt, welche ausgelesen werden sollen. Bei 10 Byte werden also bis zu neun Stellen gelesen, welche ebenfalls in einer Variablen gespeichert werden müssen.
Zeile 48: Zeile 51:
   - der restliche Inhalt   - der restliche Inhalt
 in je einer Zeile ausgegeben werden. in je einer Zeile ausgegeben werden.
 +
 +Hinweis: Der Modus ''r+'' funktioniert hier noch nicht uneingeschränkt. Verwende deswegen zunächst den Modus ''r'' für ''read''.
 +----
 +
 +
 +<note tip>Um den Inhalt einer Datei zu verändern, muss der Dateizeiger an geeigneter Stelle stehen. Ist dieser nach einer Ausgabe irgendwo stehen geblieben, so kann man ihn ganz einfach wieder an den Anfang der Datei setzen.</note>
 +
 +===== Dateizeiger an den Dateianfang setzen =====
 +
 +Die Funktion
 +<code php>
 +rewind("Dateizeiger");
 +</code>
 +macht nichts weiteres, als den Dateizeiger an erste Stelle zu setzen - vergleichbar mit einem Cursor, der mit POS1 an die erste Stelle rückt.
 +
 +===== Daten in eine Textdatei schreiben =====
 +
 +Die Funktion
 +<code php>
 +fputs();
 +</code>
 +schreibt Daten in eine Datei. Ihre Argumente sind ein Dateizeiger und die Daten.
 +
 +Im Beispiel:
 +<code php>
 +fputs($fp, "Was ist los");
 +</code>
 +
 +Es muss sich um irgendeine Art von Daten handeln, es muss kein ''String'' sein. Eine Variable mit einem bestimmten Inhalt oder verschiedene Arrayfelder können ebenfalls in die Textdatei gespeichert werden.
 +
 +===== Textdatei schließen =====
 +
 +Die Funktion
 +<code php>
 +fclose("Dateizeiger");
 +</code>
 +schließt die Datei und nimmt den Dateizeiger sozusagen aus dem Text heraus.
 +
 +===== PROBLEME =====
 +
 +<note important>Auf dem Webserver funktioniert das Auslesen wunderbar, sobald es allerdings ans Schreiben der Datei geht, haben wir nicht genügend Rechte! Deswegen müssen wir auf dem Server die Datei ''nachname.txt'' freischalten.
 +</note>
 +
 +Unter den Eigenschaften der Datei kann man auf dem Server (WinSCP) der Gruppen bzw. Anderen die Schreibrechte mit einem Häkchen bei "W" vergeben. Damit ist der letzte Schritt getan und du kannst dich an folgende Aufgabe machen.
 +
 +===== Übung =====
 +
 +{{:htmlcss:work_64.png|}}
 +  - Programmiere obige Eingabe und teste erneut das Beispiel mit der Ausgabe.
 +  - Erstelle einen Hit-Counter, der jedes Mal um einen Wert steigt, sobald jemand deine Startseite besucht bzw. auf den Reload-Button klickt. (Tipp: nenne die Textdatei ''counter.txt'', sie hat den Inhalt 0 (0 Hits beim ersten Aufruf).
 +  - Verändere den Hit-Counter so, dass es zu einem tatsächlichen Besucherzähler wird.
 +
 +<note tip>Tipp zu Aufgabe 3: Verwende ein Cookie, das für einen Tag gültig ist.</note>
 +
 +
 +[[cookies:cookielektion3|Umfrage selbst gemacht]]
cookies/cookielektion2.1305057892.txt.gz · Zuletzt geändert: 10.05.2011 20:04 von Stefan Gaum

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki