anpera.net https://anpera.dyndns.org/phpbb3/ |
|
Fehler, der nicht auftreten dürfte https://anpera.dyndns.org/phpbb3/viewtopic.php?f=34&t=3743 |
Seite 1 von 1 |
Autor: | Montekar [ So 24 Jun, 2007 17:35 ] |
Betreff des Beitrags: | Fehler, der nicht auftreten dürfte |
[php] <? require_once "common.php"; page_header("Der Hütchenspieler"); output("`5`c`bDer Hütchenspieler`b`c`n`n"); $huetchen=array("linke","mittlere","rechte"); if ($_GET['op']=="") { output("`5An einem Tisch in der Schenke sitzt ein Mann, vor ihm auf dem Tisch stehen drei "); output("Hütchen. Neugierig trittst du näher.`n`n\"`9Ein kleines Spielchen gefällig?`5\", "); output("fragt er dich. \"`9Kostet auch nur einen Edelstein.`5\"`n`n"); addnav("Optionen"); $gems=$session['user']['gems']; if ($session['user']['gems']>0) { output("Ein Blick in deinen Beutel verrät dir, das du noch `#$gems`5 Edelsteine hast."); addnav("Spielen","glueck.php?op=spielen"); } else { output("Leider ist dein Beutel leer, komm wieder, wenn du einen Edelstein hast."); } addnav("Zurück","inn.php"); } else if ($_GET['op']=="spielen") { output("`5Du legst einen Edelstein auf den Tisch und der Mann schiebt ihn unter das "); output("".$huetchen['e_rand(1,3)']." Hütchen. Sofort beginnt er, die Hütchen zu verschieben, "); output("sodass du nach wenigen Sekunden den Überblick verloren hast.`n`n`^Auf welches "); output("Hütchen tippst du?`0"); $session['user']['gems']--; addnav("Auf welches Hütchen tippst du?"); addnav("Aus das linke","glueck.php?op=links"); addnav("Aus das mittlere","glueck.php?op=mitte"); addnav("Aus das rechte","glueck.php?op=rechts"); } else { $stein = e_rand(1,3); if ($_GET['op']=="links") { output("`5Du zeigst mit dem Finger auf das linke Hütchen. Der Mann hebt es an und..."); if ($stein==1) $gewonnen=true; } else if ($_GET['op']=="mitte") { output("`5Du zeigst mit dem Finger auf das mittlere Hütchen. Der Mann hebt es an und..."); if ($stein==2) $gewonnen=true; } else { output("`5Du zeigst mit dem Finger auf das rechte Hütchen. Der Mann hebt es an und..."); if ($stein==3) $gewonnen=true; } if ($gewonnen) { output("`n`nDein Edelstein liegt darunter! Der Hütchenspieler gibt dir zwei Edelsteine."); $session['user']['gems']+=2; } else { output("`n`nDein Edelstein liegt nicht darunter! Der Hütchenspieler hebt das "); output("".$huetchen[$stein-1]." Hütchen an, nimmt deinen Edelstein und steckt ihn "); output("sich in die Tasche."); } addnav("Optionen"); addnav("Zurück","inn.php"); if ($session['user']['gems']) addnav("Nochmal spielen","glueck.php?op=spielen"); } page_footer(); ?>[/php] In diesem Script erscheint manchmal ne leere Seite, obwohl der Quelltext dann das hier sagt: $this->bbcode_second_pass_code('', ' <span class='colDkMagenta'>Du zeigst mit dem Finger auf das linke Hütchen. Der Mann hebt es an und... <br> <br> Dein Edelstein liegt nicht darunter! Der Hütchenspieler hebt das mittlere Hütchen an, nimmt deinen Edelstein und steckt ihn sich in die Tasche.') Der Text ist ganz nach unten verschoben. Aber warum? |
Autor: | Harthas [ So 24 Jun, 2007 17:53 ] |
Betreff des Beitrags: | |
[php]<?php require_once('common.php'); page_header('Der Hütchenspieler'); $huetchen = array('linke','mittlere','rechte'); $steine = $session['user']['gems']; $stein = e_rand(1,3); output('`5`c`bDer Hütchenspieler`b`c`n`n'); switch ($_GET['op']) { default: output('`5An einem Tisch in der Schenke sitzt ein Mann, vor ihm auf dem Tisch stehen drei Hütchen. Neugierig trittst du näher.`n`n"`9Ein kleines Spielchen gefällig?`5", fragt er dich. "`9Kostet auch nur einen Edelstein.`5"`n`n'); addnav('Optionen'); if ($steine > 0) { output('Ein Blick in deinen Beutel verrät dir, das du noch `#'.$steine.'`5 Edelsteine hast.'); addnav('Spielen','glueck.php?op=spielen'); } else { output('Leider ist dein Beutel leer, komm wieder, wenn du einen Edelstein hast.'); } break; case 'spielen': output('`5Du legst einen Edelstein auf den Tisch und der Mann schiebt ihn unter das '.$huetchen[e_rand(0,2)].' Hütchen. Sofort beginnt er, die Hütchen zu verschieben, sodass du nach wenigen Sekunden den Überblick verloren hast.`n`n`^Auf welches Hütchen tippst du?`0'); $session['user']['gems']--; addnav('Auf welches Hütchen tippst du?'); addnav('Aus das linke','glueck.php?op=links'); addnav('Aus das mittlere','glueck.php?op=mitte'); addnav('Aus das rechte','glueck.php?op=rechts'); break; case 'links': output('`5Du zeigst mit dem Finger auf das linke Hütchen. Der Mann hebt es an und...'); if ($stein == 1) $gewonnen = true; break; case 'mitte': output('`5Du zeigst mit dem Finger auf das mittlere Hütchen. Der Mann hebt es an und...'); if ($stein == 2) $gewonnen = true; break; case 'rechts': output('`5Du zeigst mit dem Finger auf das rechte Hütchen. Der Mann hebt es an und...'); if ($stein == 3) $gewonnen = true; break; } if ($gewonnen) { output('`n`nDein Edelstein liegt darunter! Der Hütchenspieler gibt dir zwei Edelsteine.'); $session['user']['gems'] += 2; } else { output('`n`nDein Edelstein liegt nicht darunter! Der Hütchenspieler hebt das '.$huetchen[$stein-1].' Hütchen an, nimmt deinen Edelstein und steckt ihn sich in die Tasche.'); } addnav('Sonstiges'); addnav('Zurück','inn.php'); if ($session['user']['gems']) addnav('Von vorne beginnen','glueck.php?op=spielen'); page_footer(); ?>[/php] Versuch es mal so... Habe das ganze noch etwas klarer strukturiert. Vielleicht löst sich dein Problem bereits auf ^^ |
Autor: | Montekar [ So 24 Jun, 2007 18:34 ] |
Betreff des Beitrags: | |
Bei der Struktur hatte ich mir eigentlich was gedacht... |
Autor: | Harthas [ Mo 25 Jun, 2007 09:33 ] |
Betreff des Beitrags: | |
Vielleicht liegt es ja genau daran. Übrigens.... else if ist etwas anderes als elseif, und zweiteres ist sogar noch etwas schneller ;-) Aber eben... switch wäre das beste. Und durch ein neues output einen Zeilenumbruch erzwingen ist auch nicht wirklich das Wahre. Alles in eines packen und mit `n arbeiten wäre besser. Nur mal so meine Kommentare dazu... ^^ |
Autor: | Montekar [ Mo 25 Jun, 2007 10:25 ] |
Betreff des Beitrags: | |
Ich hab damit keinen Zeilenunbruch erzwungen... ich habs so gemacht, damit ich bei meinem Editor nicht immer nach rechts scrollen muss... |
Autor: | Harthas [ Mo 25 Jun, 2007 11:09 ] |
Betreff des Beitrags: | |
[php]output('Blablablablubb' .'blablablablablablablablablduudu' .'Tjahaaaaaaaaaa' );[/php] So gehts auch ;-) Was den Zeilenumbruch betrifft. Dann tut es mir natürlich leid, hatte es wohl falsch interpretiert. Ich meinte mich jedoch daran zu erinnern, dass die Funktion output jeweils noch einen Zeilenumbruch anhängt. Vielleicht liegts ja daran. |
Seite 1 von 1 | Alle Zeiten sind UTC + 1 Stunde |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |