anpera.net
https://anpera.homeip.net/phpbb3/

Mal wieder ein kleines Problem...
https://anpera.homeip.net/phpbb3/viewtopic.php?f=34&t=2415
Seite 1 von 1

Autor:  Morpheus [ Mi 29 Mär, 2006 19:22 ]
Betreff des Beitrags:  Mal wieder ein kleines Problem...

Servus, ich mal wieder...Ich hab aus der inn.php die Sache mit Cedi und den Gems übernommen, hab einen Punkt gestrichen, einen geändert und es in einen Tempel verpflanzt. Leider klappt es nicht ganz, wie es soll. Wenn ich es aufrufe, erscheint die selbe Screen wie bei Cedi, eben mit meinen Optionen, aber wenn ich Gems einsetze, egal ob die richtige (gerade) oder falsche Anzahl (ungerade), es passiert nichts.
Wahrscheinlich nur eine Klammer falsch gesetzt, aber wie und wo? Oder hab ich einen Grundlegenden Fehler beim SQL gemacht? SQL ist leider alles andere als meine Stärke...Für Hilfe wäre ich sehr dankbar.
Beste Grüße
Morpheus

$this->bbcode_second_pass_code('', ' <?php
// Idee und Umsetzung
// Morpheus aka Apollon
// 2006 für logd.at(LoGD 0.9.7 +jt ext (GER) 3)
// Mail to Morpheus@magic.ms or Apollon@magic.ms
// gewitmet meiner über alles geliebten Blume
// Funktion entnommen aus der inn.php
require_once "common.php";
page_header("Tempel der Artemis");
if ($HTTP_GET_VARS[op]==""){
output("`7`b`cTempel der Artemis`c`b");
output("`n<table align='center'><tr><td><IMG SRC=\"images/stadt/artemis.jpg\"></tr></td></table>`n",true);
output("`3Du betrittst eine recht große Tempelhalle, die hell und freundlich wirkt.");
output("`3Durch die großen, bunten Fenster in den Seiten dringt helles Sonnenlicht in den Tempel, an dessen Ende eine Statue der Artemis steht.`n");
output("`3Vor der Statue steht ein Altar, der mit Blumen geschmückt ist, die in allen Farben leuchten und ein Priester ist grade dabei, sie mit Wasser zu versorgen.`n");
output("`3Als er Dich bemerkt, stellt er seine Kanne bei Seite und wendet sich zu Dir:`2Hallo ".$session['user']['name']."`2, sei herzlichen willkommen im Tempel der Artemis!");
output("`2Du möchtest also die Gnade der Göttin erflehen, auf daß sie Dich Stärke und Deinem Leben mehr Glanz verleihe.`n");
output("`3Ehrfürchtig nickst Du und er Priester lächelt:`2 Nun, das sollte kein Problem sein, so fern Du bereit bist, der Göttin angemessen Opfer zu bringen.");
output("`2Ich hoffe, Du besitzt auch Edelsteine, die Du zu opfern bereit bist!?`n");
addnav("Ja, das will ich", "artemistempel.php?act=gems");
addnav("Verzeiht, lieber doch nicht", "kloster.php");
}
if ($HTTP_GET_VARS[act]=="gems"){
if ($HTTP_POST_VARS[gemcount]==""){
output("\"`2Nun, für Deine Edelsteine kann ich Dir einen magischen Trank brauen, je mehr Du mir gibst je stärker wird er sein, der Grundtrank kostet 2 Gems.`0\"");
output("`n`nWieviele Edelsteine gibst du ihm?");
output("<form action='artemistempel.php?op=gems' method='POST'><input name='gemcount' value='0'><input type='submit' class='button' value='Weggeben'>`n",true);
output("`nUnd welche Gunst erhoffst Du Dir von der Göttin dafür?`n`n<input type='radio' name='wish' value='1' checked> Charme`n<input type='radio' name='wish' value='2'> Lebenskraft`n",true);
addnav("","artemistempel.php?op=act=gems");
output("<input type='radio' name='wish' value='3'> Gesundheit`n",true);
output("<input type='radio' name='wish' value='4'> Ansehen</form>",true);
}else{
$gemcount = abs((int)$HTTP_POST_VARS[gemcount]);
if ($gemcount>$session[user][gems]){
output("Der Priester blickt dich an, schüttelt den Kopf und sagt lächelnd: \"`2Du hast nich so viele Edelsteine bei Dir, `bich fürchte, Du wirst noch welche Besorgen müßen!`b`0\"");
}else{
output("`#Du platzierst $gemcount Edelsteine auf der Theke.");
if ($gemcount % 2 == 0){

}else{
output(" Der Priester lächelt milde, weil Du ihm einen Gem zuviel gegeben hast, ");
output("denn er Dir zwinkernd wieder gibt.");
$gemcount-=1;
}
if ($gemcount>0) output("Der Prister wendet sich zum Altar, mischt einen Trunk und überreicht Dir die Schale, die Du bis auf den letzten Tropfen leerst...`n`n");
$session[user][gems]-=$gemcount;
//debuglog("used $gemcount gems on potions");
if ($gemcount>0){
switch($HTTP_POST_VARS[wish]){
case 1:
$session[user][charm]+=($gemcount/2);
output("`&Du fühlst dich charmant! `^(Du erhältst Charmepunkte)");
break;
case 2:
$session[user][maxhitpoints]+=($gemcount/2);
$session[user][hitpoints]+=($gemcount/2);
output("`&Du fühlst wie neue Lebensenergie in Dir wächst! `^(Deine maximale Lebensenergie erhöht sich permanent)");
break;
case 3:
if ($session[user][hitpoints]<$session[user][maxhitpoints]) $session[user][hitpoints]=$session[user][maxhitpoints];
$session[user][hitpoints]+=($gemcount*10);
output("`&Du fühlst, wie Deine Gesundheit zu steigen scheint! `^(Du erhältst vorübergehend mehr Lebenspunkte)");
break;
case 4:
$session[user][reputation]+=(($gemcount/2)*5);
output("`&Ein paar Deiner Sünden wurden Dir vergeben und Dein Ansehen erhöht");
break;
}
}else{
output("`n`nDu überlegst es Dir anders, entschuldigst Dich beim Priester und verabschiedest Dich von ihm.");
}
}
}
addnav("Zurück zum Klosterhof", "kloster.php");
}
page_footer();
?> ')

Autor:  Garlant [ Do 30 Mär, 2006 13:01 ]
Betreff des Beitrags: 

Versuche es mal damit, aber keine Garantie.
Ahja und noch etwas. Achte mal ein wenig Auf performence und vor allem darauf was php-Versionsänderungen mit sich bringen.

[php]<?php
// Idee und Umsetzung
// Morpheus aka Apollon
// 2006 für logd.at(LoGD 0.9.7 +jt ext (GER) 3)
// Mail to Morpheus@magic.ms or Apollon@magic.ms
// gewitmet meiner über alles geliebten Blume
// Funktion entnommen aus der inn.php
require_once "common.php";
page_header("Tempel der Artemis");
if ($_GET['op']==''){
output("`7`b`cTempel der Artemis`c`b");
output("`n<table align='center'><tr><td><IMG SRC=\"images/stadt/artemis.jpg\"></tr></td></table>`n",true);
output("`3Du betrittst eine recht große Tempelhalle, die hell und freundlich wirkt.");
output("`3Durch die großen, bunten Fenster in den Seiten dringt helles Sonnenlicht in den Tempel, an dessen Ende eine Statue der Artemis steht.`n");
output("`3Vor der Statue steht ein Altar, der mit Blumen geschmückt ist, die in allen Farben leuchten und ein Priester ist grade dabei, sie mit Wasser zu versorgen.`n");
output("`3Als er Dich bemerkt, stellt er seine Kanne bei Seite und wendet sich zu Dir:`2Hallo ".$session['user']['name']."`2, sei herzlichen willkommen im Tempel der Artemis!");
output("`2Du möchtest also die Gnade der Göttin erflehen, auf daß sie Dich Stärke und Deinem Leben mehr Glanz verleihe.`n");
output("`3Ehrfürchtig nickst Du und er Priester lächelt:`2 Nun, das sollte kein Problem sein, so fern Du bereit bist, der Göttin angemessen Opfer zu bringen.");
output("`2Ich hoffe, Du besitzt auch Edelsteine, die Du zu opfern bereit bist!?`n");
addnav("Ja, das will ich", "artemistempel.php?op=priester&act=gems");
addnav("Verzeiht, lieber doch nicht", "kloster.php");
}
if ($_GET['act']=='gems'){
if ((int)$_POST['gemcount']!='0'){
output("\"`2Nun, für Deine Edelsteine kann ich Dir einen magischen Trank brauen, je mehr Du mir gibst je stärker wird er sein, der Grundtrank kostet 2 Gems.`0\"");
output("`n`nWieviele Edelsteine gibst du ihm?");
output("<form action='artemistempel.php?op=gems' method='POST'><input name='gemcount' value='0'><input type='submit' class='button' value='Weggeben'>`n",true);
output("`nUnd welche Gunst erhoffst Du Dir von der Göttin dafür?`n`n<input type='radio' name='wish' value='1' checked> Charme`n<input type='radio' name='wish' value='2'> Lebenskraft`n",true);
output("<input type='radio' name='wish' value='3'> Gesundheit`n",true);
output("<input type='radio' name='wish' value='4'> Ansehen</form>",true);
addnav("","inn.php?op=bartender&act=gems");
}else{
$gemcount = ((int)$_POST['gemcount']);
if ($gemcount>$session['user']['gems']){
output("Der Priester blickt dich an, schüttelt den Kopf und sagt lächelnd: \"`2Du hast nich so viele Edelsteine bei Dir, `bich fürchte, Du wirst noch welche Besorgen müßen!`b`0\"");
}else{
output("`#Du platzierst $gemcount Edelsteine auf der Theke.");
if ($gemcount % 2 == 0){

}else{
output(" Der Priester lächelt milde, weil Du ihm einen Gem zuviel gegeben hast, ");
output("denn er Dir zwinkernd wieder gibt.");
$gemcount-=1;
}
if ($gemcount>0) output("Der Prister wendet sich zum Altar, mischt einen Trunk und überreicht Dir die Schale, die Du bis auf den letzten Tropfen leerst...`n`n");
$session['user']['gems']-=$gemcount;
//debuglog("used $gemcount gems on potions");
if ($gemcount>0){
switch((int)$_POST['wish']){
case 1:
$session['user']['charm']+=($gemcount/2);
output("`&Du fühlst dich charmant! `^(Du erhältst Charmepunkte)");
break;
case 2:
$session['user']['maxhitpoints']+=($gemcount/2);
$session['user']['hitpoints']+=($gemcount/2);
output("`&Du fühlst wie neue Lebensenergie in Dir wächst! `^(Deine maximale Lebensenergie erhöht sich permanent)");
break;
case 3:
if ($session['user']['hitpoints']<$session['user']['maxhitpoints']) $session['user']['hitpoints']=$session['user']['maxhitpoints'];
$session['user']['hitpoints']+=($gemcount*10);
output("`&Du fühlst, wie Deine Gesundheit zu steigen scheint! `^(Du erhältst vorübergehend mehr Lebenspunkte)");
break;
case 4:
$session['user']['reputation']+=(($gemcount/2)*5);
output("`&Ein paar Deiner Sünden wurden Dir vergeben und Dein Ansehen erhöht");
break;
}
}else{
output("`n`nDu überlegst es Dir anders, entschuldigst Dich beim Priester und verabschiedest Dich von ihm.");
}
}
}
addnav("Zurück zum Klosterhof", "kloster.php");
}
page_footer();
?>[/php]

Autor:  Morpheus [ Do 30 Mär, 2006 13:18 ]
Betreff des Beitrags: 

Hmmm, wenn ich das so mache, erhalte ich erst garnicht die Auswahl und das Feld, um die Anzahl Gems ein zu geben, aber denoch danke für den Versuch :)

Autor:  Garlant [ Do 30 Mär, 2006 13:45 ]
Betreff des Beitrags: 

Habe das nochmal durchgesehen und die fehler gefunden.
Das ist jetzt nur eine einfache Lösung.

Sollte nun funktionieren.

[php]<?php
// Idee und Umsetzung
// Morpheus aka Apollon
// 2006 für logd.at(LoGD 0.9.7 +jt ext (GER) 3)
// Mail to Morpheus@magic.ms or Apollon@magic.ms
// gewitmet meiner über alles geliebten Blume
// Funktion entnommen aus der inn.php
require_once "common.php";
page_header("Tempel der Artemis");
if ($_GET['op']==''){
output("`7`b`cTempel der Artemis`c`b");
output("`n<table align='center'><tr><td><IMG SRC=\"images/stadt/artemis.jpg\"></tr></td></table>`n",true);
output("`3Du betrittst eine recht große Tempelhalle, die hell und freundlich wirkt.");
output("`3Durch die großen, bunten Fenster in den Seiten dringt helles Sonnenlicht in den Tempel, an dessen Ende eine Statue der Artemis steht.`n");
output("`3Vor der Statue steht ein Altar, der mit Blumen geschmückt ist, die in allen Farben leuchten und ein Priester ist grade dabei, sie mit Wasser zu versorgen.`n");
output("`3Als er Dich bemerkt, stellt er seine Kanne bei Seite und wendet sich zu Dir:`2Hallo ".$session['user']['name']."`2, sei herzlichen willkommen im Tempel der Artemis!");
output("`2Du möchtest also die Gnade der Göttin erflehen, auf daß sie Dich Stärke und Deinem Leben mehr Glanz verleihe.`n");
output("`3Ehrfürchtig nickst Du und er Priester lächelt:`2 Nun, das sollte kein Problem sein, so fern Du bereit bist, der Göttin angemessen Opfer zu bringen.");
output("`2Ich hoffe, Du besitzt auch Edelsteine, die Du zu opfern bereit bist!?`n");
addnav("Ja, das will ich", "artemistempel.php?op=priester&act=gems");
addnav("Verzeiht, lieber doch nicht", "kloster.php");
}
if ($_GET['op']=='gems'){
output("\"`2Nun, für Deine Edelsteine kann ich Dir einen magischen Trank brauen, je mehr Du mir gibst je stärker wird er sein, der Grundtrank kostet 2 Gems.`0\"");
output("`n`nWieviele Edelsteine gibst du ihm?");
output("<form action='artemistempel.php?op=gems' method='POST'><input name='gemcount' value='0'><input type='submit' class='button' value='Weggeben'>`n",true);
output("`nUnd welche Gunst erhoffst Du Dir von der Göttin dafür?`n`n<input type='radio' value='1' checked> Charme`n<input type='radio' value='2'> Lebenskraft`n",true);
output("<input type='radio' value='3'> Gesundheit`n",true);
output("<input type='radio' value='4'> Ansehen</form>",true);
addnav("","kloster.php?op=things");
}
elseif($_GET['op']=='things')
{
$gemcount = ((int)$_POST['gemcount']);
if ($gemcount>$session['user']['gems']){
output("Der Priester blickt dich an, schüttelt den Kopf und sagt lächelnd: \"`2Du hast nich so viele Edelsteine bei Dir, `bich fürchte, Du wirst noch welche Besorgen müßen!`b`0\"");
}else{
output("`#Du platzierst $gemcount Edelsteine auf der Theke.");
if ($gemcount % 2 == 0){

}else{
output(" Der Priester lächelt milde, weil Du ihm einen Gem zuviel gegeben hast, ");
output("denn er Dir zwinkernd wieder gibt.");
$gemcount-=1;
}
if ($gemcount>0) output("Der Prister wendet sich zum Altar, mischt einen Trunk und überreicht Dir die Schale, die Du bis auf den letzten Tropfen leerst...`n`n");
$session['user']['gems']-=$gemcount;
//debuglog("used $gemcount gems on potions");
if ($gemcount>0){

switch((int)$_POST['value']){
case 1:
$session['user']['charm']+=($gemcount/2);
output("`&Du fühlst dich charmant! `^(Du erhältst Charmepunkte)");
break;
case 2:
$session['user']['maxhitpoints']+=($gemcount/2);
$session['user']['hitpoints']+=($gemcount/2);
output("`&Du fühlst wie neue Lebensenergie in Dir wächst! `^(Deine maximale Lebensenergie erhöht sich permanent)");
break;
case 3:
if ($session['user']['hitpoints']<$session['user']['maxhitpoints']) $session['user']['hitpoints']=$session['user']['maxhitpoints'];
$session['user']['hitpoints']+=($gemcount*10);
output("`&Du fühlst, wie Deine Gesundheit zu steigen scheint! `^(Du erhältst vorübergehend mehr Lebenspunkte)");
break;
case 4:
$session['user']['reputation']+=(($gemcount/2)*5);
output("`&Ein paar Deiner Sünden wurden Dir vergeben und Dein Ansehen erhöht");
break;
}
}else{
output("`n`nDu überlegst es Dir anders, entschuldigst Dich beim Priester und verabschiedest Dich von ihm.");
}
}
addnav("Zurück zum Klosterhof", "kloster.php");
}
page_footer();
?>[/php]

Autor:  anpera [ Do 30 Mär, 2006 14:16 ]
Betreff des Beitrags: 

Würde sagen, der eigentliche und ursprüngliche Fehler lag einfach nur in der Zeile

addnav("","artemistempel.php?op=act=gems");

=> addnav("","artemistempel.php?act=gems");

Autor:  Garlant [ Do 30 Mär, 2006 15:16 ]
Betreff des Beitrags: 

anpera hat geschrieben:
Würde sagen, der eigentliche und ursprüngliche Fehler lag einfach nur in der Zeile

addnav("","artemistempel.php?op=act=gems");

=> addnav("","artemistempel.php?act=gems");


Ein Addnav ging auch nich in die inn.php ^^

Autor:  Morpheus [ Do 30 Mär, 2006 16:33 ]
Betreff des Beitrags: 

Also, irgendwie klappt außer der Startseite des Tempels garnichts mehr und ich bin etwas konfus :???: ...9 Dateien zum Klosterkomplex, dieser Tempel ist der einizge Fehler, aber ohne kann ich das Teil nicht on bringen... :bash: :(




EDIT: Hat sich erledigt....

Seite 1 von 1 Alle Zeiten sind UTC + 1 Stunde
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/