Gegen Bilderklau - Das Original (https://www.gegen-bilderklau.net/index.php)
- Design, Website, Copyright (https://www.gegen-bilderklau.net/board.php?boardid=80)
--- Homepagehilfe (https://www.gegen-bilderklau.net/board.php?boardid=27)
---- Tutorials und FAQ (https://www.gegen-bilderklau.net/board.php?boardid=45)
----- [PHP & MySQL] Turnierloser (https://www.gegen-bilderklau.net/thread.php?threadid=148445)


Geschrieben von schimmel am 11.01.2009 um 10:59:

  Turnierloser

Hier erkläre ich euch wie ein Turnierloser ausgebaut ist, so das den jeder in seine Homepage einbauen kann, um das Auswerten der Turniere zu vereinfachen.
Script ist getestet und läuft.
Ich habe (fast) nichts formatiert, um den Code so durchsichtig wie möglich zu halten.


Ihr braucht eine Seite namens turnierloser.php und einen PHP-fähigen Webspace.
Ihr solltet HTML sicher können und die Grundzüge von PHP beherrschen.

php:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
<?php
### hier werden alle Variablen, die wir brauchen aufgeführt
$anzahl $_POST['anzahl'];
$nr $_POST['nr'];
$schritt $_GET['schritt'];
### mit switch case kann man das ganze so aufteilen, das alles auf einer seite bleibt
switch($schritt){
### case '' bedeutet /seite.php ohne das ? mit einer variablen
### jetzt kommt das Formular wo der Besucher/du die Anzahl der Starter eingibt
case '':
         echo '
         <form action="/turnierloser.php?schritt=1" method="post">
         <input type="text" name="anzahl"></input><br>
         <input type="submit" value="los geht´s"></input>
         </form>
         ';
break;
case '1':
         echo '
         <form action="/turnierloser.php?schritt=2" method="post">';
### das ist das Formular, wo die Teilnehmer in die Anzahl Felder eingetragen werden, die du eben eingegeben hast
         for($zahl 1$zahl $anzahl+1$zahl++){
### die for-schleife wiederholt das ausgeben der input felder jetzt solange, bis die Variable $zahl so groß ist wie die vom User eingegebene Zahl
                 echo 'Nr. '.$zahl.' <input type="text" name="nr['.$zahl.']"></input><br>';
### hier geben wir jetzt die input felder für die Teilnehmer aus
         }
         echo '<input type="submit" value="losen"></input></form>';
break;
case '2':
         $zufall = array();
### variable $zufall ins Leben rufen : hier kommen die Teilnehmer rein
         foreach($nr AS $nummer=>$teilnehmer){ 
### in der foreach-Schleife schreiben wir nun jeden Teilnehmer in das Array $zufall
                 $zufall[] = $teilnehmer;
             }
            echo 'Vorher:<br>';
         foreach($zufall AS $nummer=>$teilnehmer){
### die Variable $zufall enhält nun alle Teilnehmer, die wir nach der Reihenfolge ausgeben also ungemischt
                     $nummer $nummer+1;
                    echo 'Platz <b>'.$nummer.'</b>: '.teilnehmer.'<br>';
         }
 ### hier "schütteln" wir das Array $zufall durch
         shuffle($zufall);
         echo '<br><br>Nachher:<br>';
         foreach($zufall AS $nummer=>$teilnehmer){
### und geben nun die Teilnehmer wieder aus, diesmal in anderer Reihenfolge, da sie durch shuffle() geschüttelt wurden
                 $nummer $nummer+1;
                 echo 'Platz <b>'.$nummer.'</b>: '.$teilnehmer.'<br>';
         }
break;
}


?>


Das Scipt könnt ihr unter http://gut-lichtenstein.bplaced.net/turnierloser.php angucken + testen
Das ganze Script wurde von mir selbst geschrieben!



Geschrieben von CL.mein.Traumpferd am 11.01.2009 um 11:21:

  RE: [PHP-Tutorial] Turnierloser

SUper TUT dankefröhlich !



Geschrieben von schimmel am 11.01.2009 um 16:04:

 

Vielen Dank smile



Geschrieben von Viviana am 11.01.2009 um 22:25:

 

tolles Tut,
aber mal ne Frage:
Da zeigt es Paltz null an, wie kann man des ändern, dass es ab platz 1 anzeigt?



Geschrieben von schimmel am 12.01.2009 um 18:00:

 

hey :)
Das ist ganz einfach! Du zählst zu jeder Zahl einfach einen dazu:
php:
1:
2:
$nummer $nummer+1;
echo 'Platz <b>'.$nummer.'</b>: '.$teilnehmer.'<br>';


Habe das im Script und auf meiner Seite auch mal verändert !



Geschrieben von Raindrops am 23.05.2009 um 09:39:

 

Ist es auch möglcih diesen Turierloser so umzubauen, dass immer neue Pferde "krank werden? Also sozusagen als Krankloser?

MFG Töni



Geschrieben von Simsi1992 am 03.08.2009 um 12:28:

 

also ich verstehs nich ganz ... oke ich bin auchnet so ganz des phpmonster xDDDD

also bei sieht des ganze jetzt so aus http://tssummerrain.ts.funpic.de/turnierloser.php

wie bekomm ich da jetzt mehr felder hin???? hab

code:
1:
$anzahl = $_POST['6'];

oder muss ich das freilassen????

& was muss ich in dem teil verändern?? also an dem hab ich noch nix verändert ?!
code:
1:
2:
3:
4:
   <form action="/turnierloser.php?schritt=1" method="post">
         <input type="text" name="anzahl"></input><br>
         <input type="submit" value="los geht´s"></input>
         </form>


wär voll nett wenn mirjemand helfen würde =/



Geschrieben von vrhisihof am 24.08.2009 um 19:04:

 

Das $anzahl = $_POST['6']; darfst du so nicht nehmen.
Muss $anzahl = $_POST['anzahl']; heißen.

Nimm einfach den Code, sowie er im Anfangsthread is Augenzwinkern

Dann gibst du in den ersten Block ein, wieviel Starter du hast. Sagen wir mal 20. Und dann klickst du dann unten weiter. Und dann gibst du im zweiten Schritt die Plätze ein. Also entweder den Namen von dem Pferd oder so.
Und dann auf losen & er lost dir die Platzierungen aus smile



Geschrieben von Carina am 07.11.2009 um 13:20:

 

also bei mir will es einfach nicht gehen. Funpic kann ja php umsetzen, daran liegt es also nicht. Ich habe den Code von oben kopiert und es geht nicht. Jetzt habe ich schon die Sprüche rausgelöscht und es geht genauso wenig wie vorher auch.

php:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:

<?php
$anzahl $_POST['anzahl'];
$nr $_POST['nr'];
$schritt $_GET['schritt'];
switch($schritt){
case '':
         echo '
         <form action="/turnierloser.php?schritt=1" method="post">
         <input type="text" name="anzahl"></input><br>
         <input type="submit" value="los geht´s"></input>
         </form>
         ';
break;
case '1':
         echo '
         <form action="/turnierloser.php?schritt=2" method="post">';
         for($zahl 1$zahl $anzahl+1$zahl++){
                 echo 'Nr. '.$zahl.' <input type="text" name="nr['.$zahl.']"></input><br>';
         }
         echo '<input type="submit" value="losen"></input></form>';
break;
case '2':
         $zufall = array();
         foreach($nr AS $nummer=>$teilnehmer){
                 $zufall[] = $teilnehmer;
             }
            echo 'Vorher:<br>';
         foreach($zufall AS $nummer=>$teilnehmer){
                     $nummer $nummer+1;
                    echo 'Platz <b>'.$nummer.'</b>: '.teilnehmer.'<br>';
         }
         shuffle($zufall);
         echo '<br><br>Nachher:<br>';
         foreach($zufall AS $nummer=>$teilnehmer){
                 $nummer $nummer+1;
                 echo 'Platz <b>'.$nummer.'</b>: '.$teilnehmer.'<br>';
         }
break;
}


?>


klick



Geschrieben von Carina am 07.11.2009 um 13:25:

 

oh sry habs oben reineditiert



Geschrieben von Saskia am 14.05.2011 um 13:45:

 

muss ich jetzt 3 seiten erstellen ? Bei mir zeigts nur die erste seite an, wo man die zahl eingeben kann und wenn ich auf "los gehts" drücke, kommt, dass es die Seite nicht gibt... was mach ich falsch ?



Geschrieben von Nanni am 14.05.2011 um 14:05:

 

Nein, du brauchst nur eine Seite. Heißt sie bei dir eh auch turnierloser.php ? Ansonsten musst du den Namen in den Form-Befehlen umändern. Augenzwinkern



Geschrieben von Saskia am 15.05.2011 um 13:32:

 

Ja heißt so



Geschrieben von White_Mustang am 11.09.2011 um 19:40:

 

Hallo saskia94,

hatte das Problem auch, bis mir aufgefallen ist, dass du den Pfad noch verändern musst, wenn du mit Unterordnern arbeitest..

Beispiel:
Original
php:
1:
<form action="/turnierloser.php?schritt=1" method="post">


Angepasst
php:
1:
<form action="http://deine-seite.de/UNTERORDNER/turnierloser.php?schritt=1" method="post">


Du musst also dementsprechend den Pfad angeben in der die Datei "turnierloser.php" liegt. Bei meiner Angepassten Variante ist es ein absoluter Pfad, wenn du mit relativen Pfaden arbeitest, mache:
../ -> für deine Adresse in der die Index liegt und nach dem Slash kannst du dann deine(n) Unterordner namentlich eintragen.

Siehe so:
php:
1:
<form action="../UNTERORDNER/turnierloser.php?schritt=1" method="post">

Dies natürlich auch bei dem 2. Schritt verwenden.


schimmel, vielen Dank für das Tutorial (:

Liebe Grüße,
Whity


Forensoftware: Burning Board, entwickelt von WoltLab GmbH