SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Das Zend Framework

Das Zend Framework zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP Grundlagen
Hilfe Community Kalender Heutige Beiträge Suchen

PHP Grundlagen Hier kann über grundlegende Probleme oder Anfängerschwierigkeiten diskutiert werden

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 11.08.2009, 19:56:05
Viento Viento ist offline
Anfänger
 
Registriert seit: Aug 2009
Alter: 39
Beiträge: 5
Klick Button +1 Counter

Hallo zusammen nocheinmal :)

Habe noch eine Frage:

Habe einen Counter:
PHP-Code:
<?php

/////////////////////////////////////////
// Counter + Reloadsperre v1.0
/////////////////////////////////////////

// 0=keine Reloadsperre, 1=Reloadsperre
$aktiv 1;
// Zeit der Reloadsperre in Minuten
$zeit 1;
// IP-Datei
$ipdatei "ips.txt";
// Counterdatei
$datei "counter.txt";
// Anzahl der führenden Nullen
$stellen 5;
// Festlegen der Bild-Dimensionen
$breite="15";
$hoehe="19";

/////////////////////////////////////////
// IP-Reloadsperre
/////////////////////////////////////////

function pruf_IP($rem_addr) {
  global 
$ipdatei,$zeit;
  @
$ip_array file($ipdatei);
  
$reload_dat fopen($ipdatei,"w");
  
$this_time time();
  for (
$i=0$i<count($ip_array); $i++) {
    list(
$ip_addr,$time_stamp) = explode("|",$ip_array[$i]);
    if (
$this_time < ($time_stamp+60*$zeit)) {
      if (
$ip_addr == $rem_addr) {
        
$gefunden=1;
      }
      else {
        
fwrite($reload_dat,"$ip_addr|$time_stamp");
      }
    }
  }
  
fwrite($reload_dat,"$rem_addr|$this_time\n");
  
fclose($reload_dat);
  return (
$gefunden==1) ? 0;
}

/////////////////////////////////////////
// Counter-Abfrage
/////////////////////////////////////////

if (file_exists($datei) && ($aktiv==|| ($aktiv==&& pruf_IP($_SERVER['REMOTE_ADDR'])==0))) {
  
// Falls die Datei existiert, wird sie ausgelesen und
  // der dort enthaltene Wert um Eins erhöht.
  
$fp=fopen($datei,"r+");
  
$zahl=fgets($fp,$stellen);
  
$zahl++;
  
rewind($fp);
  
flock($fp,2);
  
fputs($fp,$zahl,$stellen);
  
flock($fp,3);
  
fclose($fp);
}else if (!
file_exists($datei) && ($aktiv==|| ($aktiv==&& pruf_IP($_SERVER['REMOTE_ADDR'])==0))) {
  
// Die Datei counter.txt existiert nicht, sie wird
  // neu angelegt und mit dem Wert 1 gefüllt.
  
$fp=fopen($datei,"w");
  
$zahl="1";
  
fputs($fp,$zahl,$stellen);
  
fclose($fp);
} else {
  
// Die Datei existiert zwar, jedoch handelt
  // es sich wahrscheinlich um den gleichen Besucher
  
$fp=fopen($datei,"r");
  
$zahl=fgets($fp,$stellen);
  
fclose($fp);
}

$zahl=sprintf("%0".$stellen."d",$zahl);

?>
funktioniert auch wunderbar.... nur ich möchte das der zähler nur zählt wenn einer auf einen bestimmten button drückt... wie bekomm ich das hin?

Geändert von cortex (11.08.2009 um 20:21:21 Uhr) Grund: code-Tags
Mit Zitat antworten
  #2  
Alt 11.08.2009, 20:14:22
cortex cortex ist offline
SELFPHP Profi
 
Registriert seit: Apr 2008
Alter: 48
Beiträge: 1.938
AW: Klick Button +1 Counter

Tip: benutze die php-tags des forums zur formatierung von quelltexten - siehe forenregeln. niemand wühlt sich gern durch unformatierten code...

cx
Mit Zitat antworten
  #3  
Alt 11.08.2009, 21:37:56
Benutzerbild von xabbuh
xabbuh xabbuh ist offline
SELFPHP Guru
 
Registriert seit: May 2003
Beiträge: 7.187
AW: Klick Button +1 Counter

Du kannst mit einer Bedingung prüfen, ob z.B. ein bestimmter URL-Parameter übergeben wurde:
PHP-Code:
<?php
if(isset($_GET["paramName"]) && $_GET["paramWert"] == "irgendwas") {
    
// hier den gewünschten Code reinschreiben
}
Mit Zitat antworten
  #4  
Alt 11.08.2009, 22:19:06
Viento Viento ist offline
Anfänger
 
Registriert seit: Aug 2009
Alter: 39
Beiträge: 5
AW: Klick Button +1 Counter

also müsste das dann so aussehen? :


PHP-Code:
<?php

if(isset($_GET[""]) && $_GET["paramWert"] == "irgendwas") {
    
// hier den gewünschten Code reinschreiben
}

/////////////////////////////////////////
// Counter + Reloadsperre v1.0
/////////////////////////////////////////

// 0=keine Reloadsperre, 1=Reloadsperre
$aktiv 1;
// Zeit der Reloadsperre in Minuten
$zeit 0;
// IP-Datei
$ipdatei "ips.txt";
// Counterdatei
$datei "counter.txt";
// Anzahl der führenden Nullen
$stellen 5;
// Festlegen der Bild-Dimensionen
$breite="15";
$hoehe="19";

/////////////////////////////////////////
// IP-Reloadsperre
/////////////////////////////////////////

function pruf_IP($rem_addr) {
  global 
$ipdatei,$zeit;
  @
$ip_array file($ipdatei);
  
$reload_dat fopen($ipdatei,"w");
  
$this_time time();
  for (
$i=0$i<count($ip_array); $i++) {
    list(
$ip_addr,$time_stamp) = explode("|",$ip_array[$i]);
    if (
$this_time < ($time_stamp+60*$zeit)) {
      if (
$ip_addr == $rem_addr) {
        
$gefunden=1;
      }
      else {
        
fwrite($reload_dat,"$ip_addr|$time_stamp");
      }
    }
  }
  
fwrite($reload_dat,"$rem_addr|$this_time\n");
  
fclose($reload_dat);
  return (
$gefunden==1) ? 0;
}

/////////////////////////////////////////
// Counter-Abfrage
/////////////////////////////////////////

if (file_exists($datei) && ($aktiv==|| ($aktiv==&& pruf_IP($_SERVER['REMOTE_ADDR'])==0))) {
  
// Falls die Datei existiert, wird sie ausgelesen und
  // der dort enthaltene Wert um Eins erhöht.
  
$fp=fopen($datei,"r+");
  
$zahl=fgets($fp,$stellen);
  
$zahl++;
  
rewind($fp);
  
flock($fp,2);
  
fputs($fp,$zahl,$stellen);
  
flock($fp,3);
  
fclose($fp);
}else if (!
file_exists($datei) && ($aktiv==|| ($aktiv==&& pruf_IP($_SERVER['REMOTE_ADDR'])==0))) {
  
// Die Datei counter.txt existiert nicht, sie wird
  // neu angelegt und mit dem Wert 1 gefüllt.
  
$fp=fopen($datei,"w");
  
$zahl="1";
  
fputs($fp,$zahl,$stellen);
  
fclose($fp);
} else {
  
// Die Datei existiert zwar, jedoch handelt
  // es sich wahrscheinlich um den gleichen Besucher
  
$fp=fopen($datei,"r");
  
$zahl=fgets($fp,$stellen);
  
fclose($fp);
}

$zahl=sprintf("%0".$stellen."d",$zahl);

?>


und woher bekomme ich den parameterwert bzw name von dem button her?

der quellcode des buttons sieht so aus:

PHP-Code:
<form method="post">
        <
input name="Submit1" type="submit" value="Ich mache mit!"></form

Vielen dank schonmal
Mit Zitat antworten
  #5  
Alt 11.08.2009, 23:13:25
Benutzerbild von xabbuh
xabbuh xabbuh ist offline
SELFPHP Guru
 
Registriert seit: May 2003
Beiträge: 7.187
AW: Klick Button +1 Counter

Zitat:
Zitat von Viento Beitrag anzeigen
also müsste das dann so aussehen? :
[...]
Nein, an der Stelle innerhalb des if-Zweiges, an der ich den Kommentar gesetzt habe, muss natürlich dein Code stehen, der den Zählerstand um Eins erhöht.

Zitat:
Zitat von Viento
und woher bekomme ich den parameterwert bzw name von dem button her?

der quellcode des buttons sieht so aus:

PHP-Code:
<form method="post">
        <
input name="Submit1" type="submit" value="Ich mache mit!"></form
Der Schlüssel innerhalb des superglobalen Arrays wird durch das name-Attribut des Buttons bestimmt. Der Wert durch das value-Attribut. Da du das Formular per POST-Methode verschickst, musst du dementsprechend aber auch auf $_POST zugreifen:
PHP-Code:
if(isset($_POST["Submit1"]) && $_POST["Submit1"] == "Ich mache mit!") {

Mit Zitat antworten
  #6  
Alt 12.08.2009, 20:53:59
Viento Viento ist offline
Anfänger
 
Registriert seit: Aug 2009
Alter: 39
Beiträge: 5
AW: Klick Button +1 Counter

irgendwie bekomm ich das nicht hin:(

ich weis nicht was genau dann da stehen muss:(

wäre nett wenn ihr mir helfen würdet...Danke
Mit Zitat antworten
  #7  
Alt 13.08.2009, 17:43:39
cortex cortex ist offline
SELFPHP Profi
 
Registriert seit: Apr 2008
Alter: 48
Beiträge: 1.938
AW: Klick Button +1 Counter

Zitat:
Zitat von Viento Beitrag anzeigen
wäre nett wenn ihr mir helfen würdet
sorry, das klingt eher nach wenn ihr mir das machen würdet. du hast doch bereits so viel (konkrete) hilfe erhalten...

cx
Mit Zitat antworten
  #8  
Alt 13.08.2009, 19:01:24
Viento Viento ist offline
Anfänger
 
Registriert seit: Aug 2009
Alter: 39
Beiträge: 5
AW: Klick Button +1 Counter

ich habe es wirklich versucht :(
und nicht nur 10 mins sondern recht lange aber ich bin am verzweifeln.....tut mir leid aber ich weis wirklich nicht was ich da falsch mache....bitte helft mir...
Mit Zitat antworten
  #9  
Alt 13.08.2009, 20:45:09
cortex cortex ist offline
SELFPHP Profi
 
Registriert seit: Apr 2008
Alter: 48
Beiträge: 1.938
AW: Klick Button +1 Counter

Zitat:
Zitat von Viento Beitrag anzeigen
bitte helft mir...
sorry, so kommst du (hier) nicht weiter. schau dir bitte punkt D unserer forenregeln an. wenn die grundlegenden dinge wie der zugriff auf superglobale variablen geklärt ist, machen wir weiter.

cx
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Klick Counter - Problem mit Lightbox! Rick11 PHP für Fortgeschrittene und Experten 2 20.10.2008 15:02:08
Counter lässt sich nicht einbinden dog PHP Grundlagen 2 15.04.2008 20:08:41
Back Button Bosko PHP Grundlagen 0 25.12.2005 09:56:57
Probleme beim Einbinden von Counter The_Semmel PHP für Fortgeschrittene und Experten 9 12.01.2003 20:29:56
PHP-SQL Counter mit Reloadsperre DarkStar PHP für Fortgeschrittene und Experten 2 29.05.2002 14:09:07


Alle Zeitangaben in WEZ +2. Es ist jetzt 11:54:55 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt