Forum: NOF - Tutorials (185 anschauliche Tutorials zum Lesen und Nacharbeiten) > PHP und MySQL - Tutorials und Kurzanleitungen

PHP und MySQL -> Einbau eines einfachen Counters

(1/2) > >>

Hans K.:
Wie der Titel bereits beinhaltet, ist ein Paket mit PHP und einer MySQL Datenbank Voraussetzung für den Counter.

Als erstes wird der Speicherplatz für den Counter geschaffen. Dafür muss eine Tabelle in der MySQL Datenbank angelegt werden (Zugang ist der Anleitung des Providers zu entnehmen).

Die Tabelle bekommt die Bezeichnung: Counter

Benötigt werden 2 Felder:
ID - eine fortlaufende ID, welcher die Funktion auto_increment vergeben werden muss (automatischer Zähler)
Zähler - der Counter an sich

Die Felder müssen noch als Typ definiert werden:

Id              int(11)
Zähler       int(11)

int(11) ist ein reines Zahlenfeld.

Nun ist der Counter noch mit einem Inhalt zu befüllen:
Als ID ist der Wert 1 einzugeben, als Zähler der Wert 0

ID ist für jeden zu verwendeten Zähler aufsteigend zu verwenden (also der erste Zähler bekommt die 1, der zweite Zähler bekommt die 2, usw.)

Hans K.:
Als Erstes ist die Seite in NOF auf PHP umzustellen:
Umstellung der Seite auf PHP

Dann wird die Verbindung zu der MySQL Datenbank hergestellt.
Verbindung zur MySQL Datenbank herstellen

Hans K.:
Nun wird der zuerst eingegebene Code um den Teil ergänzt:


--- Code: PHP ---$sql="SELECT Zähler FROM Counter WHERE id = $film_id";$result = mysql_query($sql);$row = mysql_fetch_array($result); $zuaendern = "UPDATE Counter SET Zähler = Zähler+1 WHERE id = $film_id";$aendern = mysql_query($zuaendern);
Hierdurch wird der Zähler mit jedem Aufruf um 1 erhöht.

Der ganze Code lautet nun also:


--- Code: PHP ---<?phpinclude("./html/datenbank.php"); $sql="SELECT Zähler FROM Counter WHERE id = $film_id";$result = mysql_query($sql);$row = mysql_fetch_array($result); $zuaendern = "UPDATE Counter SET Zähler = Zähler+1 WHERE id = $film_id";$aendern = mysql_query($zuaendern); ?>

Hans K.:
Nun ist ein Textfeld zu erstellen und dort zu positionieren, wo nachher der Counter zu sehen sein sollen. In den Texteigenschaften den Button HTML betätigen (das Textfeld aufziehen, an anderer Stelle ins Layout klicken und dann das Textfeld anklicken -> dann ist das Eigenschaftsfenster zu sehen).

Vor dem Tag ist der Code einzugeben:


--- Code: PHP ---<?phpecho "Die Seite wurde  ";echo $row["Zähler"];echo " Mal angesehen.";?>

Hans K.:
Die $film_id ist auf jeder Seite, wo der Counter eingesetzt wird, mit einer anderen Zahl zu versehen.  Das sollte dann so aussehen:

$film_id = '1';

oder

$film_id = '299';

Diese Definition der Variable ist noch in dem Code im Layout einzufügen:


--- Code: PHP ---$conn=mysql_connect($db_server, $db_benutzer, $db_passwort);mysql_select_db($db_name); $film_id = '1'; $sql="SELECT Zähler Counter Grunddaten WHERE id = $film_id"; 
Nun kann man durchaus die Frage stellen, warum wird das mit einer Variablen gelöst und nicht direkt als feste Zahl?
Hintergrund:
Es kann durchaus hilfreich sein, wenn z.B. mehrere Seiten dynamisch erstellt sind. Dann kann die Variable ebenfalls dynamisch befüllt werden und auch der Counter muss nur einmal erstellt werden.
(wenn ich mal mehr Zeit habe, erstelle ich ein Tut zur dynamischen Seitengestaltung)

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln