PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr

PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr (https://www.php-resource.de/forum/)
-   Projekthilfe (https://www.php-resource.de/forum/projekthilfe/)
-   -   Anmeldungen bis zu einem bestimmten Wert zählen, dann... (https://www.php-resource.de/forum/projekthilfe/51697-anmeldungen-bis-zu-einem-bestimmten-wert-zaehlen-dann.html)

mschnei 10-03-2005 12:40

Anmeldungen bis zu einem bestimmten Wert zählen, dann...
 
...keine Anmeldungen mehr zulassen.

Hallo,

ich habe versucht, mich hier etwas durchzusuchen, aber bin nicht fündig geworden, da es meistens nur um allgemeine Counter für das Besuchen einer Seite geht.

Min Problem ist folgendes:
Interessierte können sich auf einer Seite für einen Kurs anmelden. Die Anmeldung wird in einer Textdatei gespeichert, was auch wunderbar funktioniert. Nun sollen die Anmeldungen aber auch gezählt werden (kann auf der Anmeldungsseite als Zahl angegeben werden, muss aber nicht) und bei mehr als 1200 Anmeldungen darf das Formular nicht mehr zur Verfügung stehen bzw. einfach anstelle des Formulars ein Text wie "Kurs voll" oder so.

Ich habe von einer Kollegin ein Skript bekommen, dass sie die letzten Jahre benutzt hatte, aber der Zähler zählt wild und ich muss das irgendwie umschreiben.

Hat jemand vielleicht einen Link zu einem Thread oder kann mir helfen, ich kann auch noch weitere Infos geben wenn nötig.

Vielen Dank und Gruß

Mike

TobiaZ 10-03-2005 13:26

Kein plan, was du jetzt eigentlich erwartest. Ist das ein Gesuch, oder brauchst du nur nen Ansatz?

PHP-Code:

if(count(file(txt)) >= 1200
  
# kurs voll! 


darkone 10-03-2005 14:04

Du mußt die Stelle im code finden,
wo der eigentliche login passiert,
und vor diesem den counter abfragen.
Poste am besten mal den code.

TobiaZ 10-03-2005 16:00

Warum? er brauch doch nur meinen code an der enstprechenden stelle einbauen und feddisch...

mschnei 10-03-2005 16:52

Hall TobiaZ,

danke für die Antwort.

Ich denke, es ist mehr ein Gesuch, da ich für Ansätze noch nicht fit genug bin. Geht also nur darum:

nach dem senden der formulardaten: zählen
bei 1200 gesendeten: kein formular mehr, sondern "kurs voll" oder so.

Danke

Mike

TobiaZ 10-03-2005 17:24

Dein gesuch wurde ja beantwortet. also Projekthilfe ;) *verschieb*

Unter diesen umständen postest du am besten doch den quelltext, denn dann kann dir das irgendjemand direkt einbauen. ist ja nichts großes.

Zitat:

nach dem senden der formulardaten: zählen
wieso nicht vorher???

mschnei 10-03-2005 17:38

OK, also hier das Skript, so wie ich es von meiner Vorgängerin übernommen hatte. Wie gesagt, schreiben in eine Textdatei klappt prima, nur das Zählen funktioniert nicht, obwohl es wohl immer geklappt hätte. Bei ihr war der Zählerstand auch vor dem Forumular sichtbar.

PHP-Code:

<?php

$fp
=fopen("zaehler.txt","r");
$zaehler fgets($fp1000);
$zaehler strlen($zaehler);
echo 
"zaehler: ".$zaehler."<br>";
fclose($fp);

if ( 
$zaehler >= ) {
   echo  
"Kurs voll!!<br>";
   exit;
}

if (
$_POST['sent'])
{
 echo 
"<b>Du hast dich erfolgreich angemeldet!!!!!</b>";
 
$anrede $_POST['anrede'];
 
$vorname $_POST['vorname'];
 
$nachname $_POST['nachname'];
 
$ort $_POST['ort'];
 
$landkreis $_POST['landkreis'];
 
$schulform $_POST['schulform'];
 
$schule $_POST['schule'];
 
$klasse $_POST['klasse'];
 
$alter $_POST['alter'];

 
$best $_POST['best'];
 
$besser $_POST['besser'];
 
$themen $_POST['themen'];


 
$letztesjahr $_POST['letztesjahr'];


  
$message="";

  
$message .= "$anrede\t";
  
$message .= "$nachname\t";
  
$message .= "$vorname\t";
  
$message .= "$schule\t";
  
$message .= "$schulform\t";
  
$message .= "$ort\t";
  
$message .= "$landkreis\t";
  
$message .= "$alter\t";
  
$message .= "$klasse\t";
    
$message .= "$best\t";
     
$message .= "$besser\t";
    
$message .= "$themen\t";
    
$message .= "$letztesjahr\n";


 
$fp2=fopen("wunsch.txt","a");
 
fwrite($fp2$message);
 
fclose($fp2);

 
$fp3=fopen("zaehler.txt","a+");
 
$zaehler fgets($fp31000);

 
$zaehler 1;

 
fwrite($fp3$zaehler);
 
fclose($fp3);

 }
else
{
?>


(...) Hier dann das eigentliche Formular (...)


<?php
}
?>

Hoffe, das reicht, um es zu zerpflücken :rolleyes:

Danke

Mike


Ach so: Zählen nach dem Senden nur deshalb, weil ich ja die Anmedlungen zählen will, nicht die Aufrufe.

TobiaZ 10-03-2005 18:29

du willst die anmeldungen zählen. aber das machst du dann, wenn die seite aufgerufen wird. s. mein code.

darkone 11-03-2005 11:34

So müßte die reihenfolge sein,
falls dieser abstruse counter wirklich funzt:
PHP-Code:

<?php

if ($_POST['sent'])
{
 
$fp=fopen("zaehler.txt","r");
 
$zaehler fgets($fp1000);
 
$zaehler strlen($zaehler);
 echo 
"zaehler: ".$zaehler."<br>";
 
fclose($fp);

 if ( 
$zaehler >= 
 {
   echo  
"Kurs voll!!<br>";
   exit;
 }
 else
 {
  echo 
"<b>Du hast dich erfolgreich angemeldet!!!!!</b>";
  
$anrede $_POST['anrede'];
  
$vorname $_POST['vorname'];
  
$nachname $_POST['nachname'];
  
$ort $_POST['ort'];
  
$landkreis $_POST['landkreis'];
  
$schulform $_POST['schulform'];
  
$schule $_POST['schule'];
  
$klasse $_POST['klasse'];
  
$alter $_POST['alter'];
 
  
$best $_POST['best'];
  
$besser $_POST['besser'];
  
$themen $_POST['themen']; 
 
  
$letztesjahr $_POST['letztesjahr']; 
 
  
$message="";

  
$message .= "$anrede\t";
  
$message .= "$nachname\t";
  
$message .= "$vorname\t";
  
$message .= "$schule\t";
  
$message .= "$schulform\t";
  
$message .= "$ort\t";
  
$message .= "$landkreis\t";
  
$message .= "$alter\t";
  
$message .= "$klasse\t";
  
$message .= "$best\t";
  
$message .= "$besser\t";
  
$message .= "$themen\t";
  
$message .= "$letztesjahr\n";

  
$fp2=fopen("wunsch.txt","a");
  
fwrite($fp2$message);
  
fclose($fp2);

  
$fp3=fopen("zaehler.txt","a+");
  
$zaehler fgets($fp31000);

  
$zaehler 1;

  
fwrite($fp3$zaehler);
  
fclose($fp3);
 };
}
else
{
?>
(...) Hier dann das eigentliche Formular (...)
<?php
}
?>



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

Powered by vBulletin® Version 3.8.2 (Deutsch)
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.3.0
[c] ebiz-consult GmbH & Co. KG