Antworten auf deine Fragen:
Neues Thema erstellen

php-Counter der bei Klick +1 zählt

Platinoy

Noch nicht viel geschrieben

Hallo,

Ich möchte mir gerne per php einen Counter machen, der mir bei Beiträgen ein um 1 raufzählt und dies an einer anderen Stelle der Seite ausgibt, sobald ein User einen Button anklickt.
Wenn ich immer bei 0 anfangen möchte, wäre das ja eh leicht. Nur möchte ich die Zahl gerne Speichern und bei einem neuen Klick wieder +1 zählen.
Möchte mir aber nur für diesen Counter keine MySQL - DB machen, da ich die nur für diesen Counter benötigen würde. Hab gelesen das es auch möglich ist, etwas in eine Textdatei zu schreiben und dies wieder auszulesen bzw. zu überschreiben.
Könntet ihr mir da bitte helfen!
Bin einfach zu neu um das zu checken und möchte mir kein fertiges Plugin o.ä. runterladen, weil dann verstehe ich das wieder nicht.
Die Site ist in HTML, CSS und Javascript geschrieben. Somit muss bezgl. CMS nichts bedacht werden.

Vielen Dank im Voraus das du dir 1) die Zeit genommen hast dieses Posting zu lesen und 2) das du mir vlt eine Hilfestellung geben kannst.
 

lachender_engel

Aktives Mitglied

Ich bin jetzt etwas irritiert. Dazu findest Du nichts bei Tante G?
Also, Du musst die Textdatei anlegen, wenn sie noch nicht vorhanden ist.
Dann musst Du das erste Mal den Wert reinschreiben (oder Du legst manuell eine Datei mit dem Wert 0 an)
Dann musst Du die Datei öffnen und den Wert auslesen. Den dann um eins erhöhen.
Jetzt kannst Du entweder die vorhandene Datei löschen und eine neue anlegen (und den neuen Wert reinschreiben) oder Du überschreibst direkt die Datei.
Und nun die Frage, wie Du das machst?!
Zum Beispiel liefert Selphp dazu einen guten Ansatz.
 

Platinoy

Noch nicht viel geschrieben

Danke lachender_engel!
Ich habe das jetzt mit einer txt-datei, ein wenig Javascript und einer php-datei alles super hinbekommen.
Das einzig blöde ist halt noch, dass die Site erst neu geladen werden muss bevor man die die neue Zahl sieht, aber sonst ist es top!
Vlt. weiß einer von euch ja noch, wie man die erhöhte zahl gleich sieht?
 

tr4ze

Mod | Forum

Teammitglied
PSD Beta Team
Danke lachender_engel!
Ich habe das jetzt mit einer txt-datei, ein wenig Javascript und einer php-datei alles super hinbekommen.
Das einzig blöde ist halt noch, dass die Site erst neu geladen werden muss bevor man die die neue Zahl sieht, aber sonst ist es top!
Vlt. weiß einer von euch ja noch, wie man die erhöhte zahl gleich sieht?
Per ajax, du lagerst die Logik die deinen Zähler erhöht und die Datei ändert in eine separate Datei aus, fügst irgendeinen Rückgabewert ein z.B.
PHP:
echo $zählerstand
und rufst die Datei per ajax Request auf.

z.B. mit jquery
Javascript:
$.post( "zähler.php", function( zaehlerstand ) {
$( ".result" ).html( zaehlerstand );
});

Hier fügt jquery z.B. die Rückgabe der Datei zähler.php in dein DOM Element mit der CSS Klasse result ein.

Erweitern könnte man das dann noch durch einen Parameter der angibt ob nur der Zählerstand ausgegeben wird, oder der Zähler erhöht werden soll.

Javascript:
$.post( "zähler.php", { count: "true" }, function( zaehlerstand ) {
$( ".result" ).html( zaehlerstand );
});

Wie du $_POST variablen auswertest solltest du ja mittlerweile wissen.
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Neueste Themen & Antworten

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Statistik des Forums

Themen
118.565
Beiträge
1.538.067
Mitglieder
67.488
Neuestes Mitglied
Andrew56524
Oben