• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

klick zählen lassen

Status
Für weitere Antworten geschlossen.

OS-City

Neues Mitglied
Hallo , ich möchte auf einer Seite von mir ein Danke button setzen, bei dem die klicks gezählt werden, der button soll nirgesn wo hinleiten sondern einfach nur zum klicken sein, und dan möchte ich darunter die anzahl haben, wie oft geklickt wurde.

Wüsstet ihr da vieleicht eine möglichkeit ohne mysql.
 
Werbung:
Werbung:
z.b. so... deine datei in der du die klicks zählst ist zaehler.txt
da drin steht eine 0 mehr nicht!

und das hier ist dein script das das alles aktuallisiert

PHP:
<?php

$c = (int)file_get_contents('zaehler.txt');
$c++;
$file_put_contents('zaehler.txt', $c);

?>
 
Danke, aber wie kann ich da zb ein button hinzumachen weil soll ja so sein

Button: Danke
Klicks: Anzahl

also

Danke
Anzahl klicks

wie mache ich das
 
Den Button machst Du mit HTML: <input type="button" value="Danke" />
Wenn Du den nur Klicken lassen willst, ohne dass eine neue Seite geladen wird, solltest Du das mit Ajax machen, das ist clientseitig mit JavaScript gelöst, d.h. wenn der Nutzer JS nicht aktiviert hat, dann wird Dein "Danke" nicht gezählt. Wenn Du das vermeiden willst, dann machst Du das über ein normales Formular, das abgeschickt wird, den Klick zählt und dann z.B. auch wieder auf die vorherige Seite umleitet.
 
Werbung:
Wenn du den Zähler oft erhöhst oder es viele Zähler gibt, ist es nachher sinnvoller, die Werte in einer Datenbank zu speichern.
 
sinnvoll ist es auf jedenfall.
aber wollte es ja ausdrücklich nicht :)
was wäre eigentlich wenn zwei genau geleichzeitig auf den knopf drücken, schreiben dann beide gleichzeitig oder ist die datei reserviert und sie schreiben/lesen nacheinander?
Gruß KY
 
Dann wird womöglich der eine nicht gezählt. Deswegen kam der Rat mit der Datenbank, weil die den Zugriff lockt und nacheinander abarbeitet.
 
Werbung:
hier ist es zwar wohl eher sinnlos, ich bring es dennoch an.

man sollte drauf achten, dass PHP_INT_SIZE nicht überschritten wird!
 
Hallo,

ich habe genau sowas hier gesucht, jedoch funktioniert es leider bei mir nicht.

Es erscheint immer diese Fehlermeldung:

Fatal error: Call to undefined function: file_put_contents() in /homepages/6/d34620159/htdocs/news/angabe_formular_danke_nein.php on line 5

Line5 ist in dem Fall

PHP:
$file_put_contents('zaehler.txt', $c);

Irgendwie komm ich nicht weiter....was mache ich falsch?

Gruß und Danke
DAndiJok
 
file_put_contents() ist doch eine Funktion, oder? Was macht dann das $ davor?
 
Werbung:
Hab ich mir auch schon gedacht. Habs auch einmal weggelassen um zu testen obs dann geht. Bei mir wills aber auch ohne $ nicht klappen.
 
Danke, das erklärt natürlich alles. Da kann ich suchen bis ich schwarz werde ^^

"Die aktuelle PHP Version ist 4.4.9"

Gibt es denn was "ähnlich einfaches" bzw. eine Alternative, die ich mit meiner Version nutzen kann?

Gruß und Danke
DAndiJok
 
Werbung:
Danke für die Hilfe.

Hab zwar einiges gefunden zu den Themen, aber die bringen mich nur bedingt weiter.

Ich hab nich soviel Ahnung von php und daher suchte ich ne leichte Lösung, aber auch hier komm ich nicht mehr weiter. Das Anlegen der txt-Dateiel funktioniert aber die Eintragungen werden nicht erhöht. Steht immer ne 0 drin.

Achja, hier mal der Quelltext und der Link zur Diskussion in nem Forum:

PHP:
<?
getstart();
write_data();
if(@$_Post['vote'])
      echo "<img src=\"vote1.php\">";
switch($frage){
      case 1:$var =1;read ($var);break;
      case 2:$var =2;read ($var);break;
      case 3:$var =3;read ($var);
}
echo ('</font>');

#------------------Funktion Formular---------------
function getstart(){

echo <<<FORM
      <html>
      <head>
      <title>Wie fühlen Sie sich Heute?</title>
      <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
      </head>
      <body bgcolor="'FFFF66">
      <p><strong><font size="2" face="Verdana, Arial, Helveticka, san-serif">Wie f&uuml;hlen
      Sie sich Heute?</strong></p>
      <form name="form1" method="post" action="vote.php"><p>
    <label>
    <input name="frage" type="radio" value="1" checked>
    sehr gut</label><br>
    <label>
    <input name="frage" type="radio" value="2" checked>
     gut</label><br>
    <label>
    <input name="frage" type="radio" value="3" checked>
    beschissen</label><br><br>
    <input type="submit" name="vote" value="vote">
    <p><hr></p></form></body></html>
FORM;

}
#--------------Funktion TXT anlegen--------------
function write_data(){
    if(!file_exists("1.txt")){
            $dat = fopen("1.txt","w+");
            $old = fopen("1.txt","w");
            fwrite($old,0);
    }
    if(!file_exists("2.txt")){
            $dat = fopen("2.txt","w+");
            $old = fopen("2.txt","w");
            fwrite($old,0);
    }
    if(!file_exists("3.txt")){
            $dat = fopen("3.txt","w+");
            $old = fopen("3.txt","w");
            fwrite($old,0);
    }
}
#-------------Funktion Lesen Schreiben-----------
function read($var){
            $dat = fopen("$var","r");
            $erg = fgets($dat,20);
            fclose($dat);
            $num = $erg + 1;
            $new = fopen("$var.txt","w");
            fwrite($new,$num);
}


?>

PHP script resource - Voting

Wenn das Teil mal funzt, kann ich mir das sicher so anpassen wie ich es brauche :) Das Prinzip sollte ja ähnlich sein.


Vielleicht hat ja noch jemand Zeit :)

Gruß und Danke
DAndiJok
 
Danke nochmal für die Hilfen,

habe jetzt was gefunden, das mir geholfen hat und das ich super nach meinen eigenen Bedürfnissen anpassen konnte.

Ende :)
 
Werbung:
Status
Für weitere Antworten geschlossen.
Zurück
Oben