anpera.net

anpera.net

experimental server @home
Aktuelle Zeit: So 13 Jul, 2025 05:51

Alle Zeiten sind UTC + 1 Stunde




Ein neues Thema erstellen Auf das Thema antworten  [ 7 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: Alchi
BeitragVerfasst: Mi 01 Mär, 2006 17:57 
Offline
Eingeweihter
Eingeweihter

Registriert: Do 22 Dez, 2005 17:58
Beiträge: 93
LoGD: http://www.legend-green-dragon.de/logd/ ... illage.php
Hi! Ich habe habe ein kleines Problem: Ich möchte einen Laden proggen, indem man sich Tränke brauen kann. Die Zutaten findet man im Wald, das Rezept kauft man sich im Laden und man braut sich den Trank zusammen, indem man die Anzahl der Zutaten in ein Feld eingeben kann, die eingabe wird überprüft und der Trank ist fertig... doch nun mein Problem: Wie kann ich es so proggen, das bei der Eingabe (oder danach^^) die anzahl der zutaten von der DB abgezogen werden? (Wenn ich nur noch 3xKalk habe und ich für den Trank 4xKalk brauche soll eine meldung wie z.b. "Du hast nicht genügend Zutaten ö.ä)

[php]
<?php

require_once "common.php";
page_header("Zauberladen");





if($HTTP_GET_VARS[op]==""){

if ($session[user][zauberladen]==0){


output("Du berittst den kleinen aber doch sehr modern aussgestatteten Raum... Du siehst dass das gespendete Geld gut angekommen ist!");
addnav("Test","alchi.php?op=mix");
addnav ("Rezept kaufen", "alchi.php?op=buy");
}

if ($session[user][zauberladen]!=0){

addnav ("Zurück", "village.php");
output ("Was willst du denn schon wieder hier? Komm morgen wieder. Wir haben geschlossen...");
}
}





if($HTTP_GET_VARS[op]=="mix"){





output("<form action='alchi.php?op=end' method='POST'>`n",true);
output("<input id='input' name='1' width=5> `n",true);
output("<input id='input' name='2' width=5> `n",true);
output("<input id='input' name='3' width=5> `n",true);
output("<input id='input' name='4' width=5> `n",true);

output("<input type='submit' class='button' value='Abheben'></form>",true);
addnav("","alchi.php?op=end");
addnav ("Deine Zutaten", "zutaten.php");

if ($session[user][reg]>=1) {

output ("`c`$`bRezept:`n`n Trank der Regeneration`n`n");
output ("Zutaten:`n Schwefel:4 `nKalk: 3 `n Baldrian: 6 `n Beifuß: 1`n`n");
}
if ($session[user][gesundheit]>=1) {
output ("`$`n`n---------------`n`n");
output ("`@Rezept:`n`n Trank der Gesundheit`n`n");
output ("Zutaten:`n`n Schwefel:4 `nKalk: 5 `n Baldrian: 8 `n Beifuß: 8 `n`n");
}

if ($session[user][def]>=1) {
output ("`#`n`n---------------`n`n");
output ("`#Rezept:`n`n Trank des Schutzes`n`n");
output ("Zutaten:`n`n Schwefel:2 `nKalk: 4 `n Baldrian: 7 `n Beifuß: 6 ");



}
}


if($HTTP_GET_VARS[op]=="end"){
//trank der Regeneration
if ($_POST['1']==4 and $_POST['2']==3 and $_POST['3']==6 and $_POST['4']==1 and $session[user][reg] and
$rez1>=4 and $rez2>=3 and $rez3>=6 and $rez4>=1){

$rez1 = $session[user][schwefel];
$rez2 = $session[user][kalk];
$rez3 = $session[user][baldrian];
$rez4 = $session[user][beifuß];


$session[user][schwefel]-=4;
$session[user][kalk]-=3;
$session[user][baldrian]-=6;
$session[user][beifuß]-=1;

addnav ("Weiter","alchi.php?op=trank1");
output ("Als du alle Kräuter zusammengemischt hast, entsteht, ein dick, bluberndes Getränk....");



} else {
output ("Weißt du überhaubt was du zusammenbrauen wolltest? Kaufe oder lese dir das Rezept nochmal genau durch!");

addnav ("Zurück", "alchi.php");
}

}
//Ende Trank der Regeneration

//Trank der Gesundheit
if ($_POST['1']==4 and $_POST['2']==5 and $_POST['3']==8 and $_POST['4']==8 and $session[user][gesundheit]){

//Genug Zutaten??
$session[user][schwefel]>=4;
$session[user][kalk]>=5;
$session[user][baldrian]>=8;
$session[user][beifuß]>=8;



$session[user][schwefel]-=4;
$session[user][kalk]-=5;
$session[user][baldrian]-=8;
$session[user][beifuß]-=8;

addnav ("Weiter","alchi.php?op=trank2");
output ("Es ensteht eine helgrüne Flüssigkeit...");

}
//end Trank der Gesundheit



if ($_POST['1']==2 and $_POST['2']==4 and $_POST['3']==7 and $_POST['4']==6 and $session[user][def]){

addnav ("Weiter","alchi.php?op=trank3");
output ("Du hast soebend eine stark stinkende Flüssigkeit hergestellt....");
$session[user][schwefel]-=2;
$session[user][kalk]-=4;
$session[user][baldrian]-=7;
$session[user][beifuß]-=6;
}


if ($HTTP_GET_VARS[op]=="trank1"){
addnav ("Zurück", "alchi.php");
output ("`^Du hast den Trank der Regeneration zusammengebraut!!!");
$session[user][turns]+=1;
$session[user][zauberladen]+=1;
}


if($HTTP_GET_VARS[op]=="trank2"){
addnav("Zurück","alchi.php");
output ("Du hast den Trank der Gesundheit hergestellt!!!");
$session[user][maxhitpoints]+=60;
$session[user][zauberladen]+=1;
}

if($HTTP_GET_VARS[op]=="trank3"){
addnav("Zurück","alchi.php");
output ("Du hast den Trank der Schnelligkeit hergestellt!!!");
$session[user][defence]+=60;
$session[user][zauberladen]+=1;
}


//Trank kaufen
if($HTTP_GET_VARS[op]=="buy"){

addnav ("Regenerationstrank", "alchi.php?op=reg");
addnav ("Trank der Ausdauer", "alchi.php?op=aus");
addnav ("Trank der Stärke", "alchi.php?op=stärke");
addnav ("zurück", "alchi.php");

output ("Der Alchemist zeigt dir die Rezepte, die er dir anzubiten hat...");


}


if($HTTP_GET_VARS[op]=="reg"){

addnav ("Zurück", "alchi.php");
output ("Der Alchimist überreicht dir das etwas zerknüllte aber doch relativ neue Rezept!");
$session[user][reg]==1;



}

if($HTTP_GET_VARS[op]=="gesundheit"){

$session[user][gesundheit]==1;
addnav ("Zurück", "alchi.php");
output ("Der Alchimist überreicht dir das etwas zerknüllte aber doch relativ neue Rezept!");

}
if($HTTP_GET_VARS[op]=="stärke"){

$session[user][def]==1;
addnav ("Zurück", "alchi.php");
output ("Der Alchimist überreicht dir das etwas zerknüllte aber doch relativ neue Rezept!");

}



page_footer();
?>[/php]

Ich hoffe, ich habe es nicht so unverständlich erklärt^^

danke, mfg Bungo


Zuletzt geändert von Taraen am Do 02 Mär, 2006 12:19, insgesamt 1-mal geändert.

Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi 01 Mär, 2006 20:13 
Offline
Held
Held
Benutzeravatar

Registriert: Di 27 Dez, 2005 18:29
Beiträge: 217
Wohnort: Flensburg
LoGD: http://lyra.x-mashine.de/
hallöle bungo.. na wurdest du weitergeleitet hierher von lilith glaub ich war das?
^^

ich würd mal ne else abfrage reinbaun.. denn wenn die fälle nicht erfüllt sind, dass man soundsoviele zutaten hat, muss ja ein else kommen, und da bau halt diesen anzeigetext rein ..

mfg lyra


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi 01 Mär, 2006 21:01 
Offline
Eingeweihter
Eingeweihter

Registriert: Do 22 Dez, 2005 17:58
Beiträge: 93
LoGD: http://www.legend-green-dragon.de/logd/ ... illage.php
Das hab ich auch schon gemacht... Das geht dann einfach in den Minus bereich... :(


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi 01 Mär, 2006 21:38 
Offline
Freak
Freak

Registriert: So 30 Okt, 2005 17:48
Beiträge: 1408
Wohnort: PB
Geschlecht: Männlich
LoGD: http://dav.blood-reaver.de/lotgd/
mal so ein Paar hinweise:

1: Bitte ['php'] und ['/php'] ohne die ' darin verwenden, wenn du php-Code angibst.
2: Den Code und die Klammern bitte ein wneig übersichtlicher einrücken und nicht ganz so viele Leerzeilene dazuwischen, sonst werdne die seiten immer so ellenlang. Am besten sonst gleich anhängen.

Außerdem würde ich dich bitten, noch einmla anzugeben, was du in der Datenbank speicherst.

Das dürfte alles schon mal bei der Beantwortung deiner Fragen helfen.

_________________
Mehr oder minder inaktiv


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do 02 Mär, 2006 00:14 
Offline
Marquis Pherae
Marquis Pherae

Registriert: Mi 09 Feb, 2005 16:01
Beiträge: 3925
Wohnort: Basel
Geschlecht: Männlich
Ein paar Verbesserungsvorschläge:

- Nimm $_GET anstatt $HTTP_GET_VARS!
Ab PHP 5 ist $HTTP_GET_VARS Standartgemäss deaktiviert. $_GET ist modern und kurz.

- Mach bitte! Bitte folgendes:
[php]switch($_GET['op'])
{
case "":
f ($session[user][zauberladen]==0){


output("Du berittst den kleinen aber doch sehr modern aussgestatteten Raum... Du siehst dass das gespendete Geld gut angekommen ist!");
addnav("Test","alchi.php?op=mix");
addnav ("Rezept kaufen", "alchi.php?op=buy");
}

if ($session[user][zauberladen]!=0){

addnav ("Zurück", "village.php");
output ("Was willst du denn schon wieder hier? Komm morgen wieder. Wir haben geschlossen...");
}
break;
case "mix":
output("<form action='alchi.php?op=end' method='POST'>`n",true);
output("<input id='input' name='1' width=5> `n",true);
output("<input id='input' name='2' width=5> `n",true);
output("<input id='input' name='3' width=5> `n",true);
output("<input id='input' name='4' width=5> `n",true);

output("<input type='submit' class='button' value='Abheben'></form>",true);
addnav("","alchi.php?op=end");
addnav ("Deine Zutaten", "zutaten.php");

if ($session[user][reg]>=1) {

output ("`c`$`bRezept:`n`n Trank der Regeneration`n`n");
output ("Zutaten:`n Schwefel:4 `nKalk: 3 `n Baldrian: 6 `n Beifuß: 1`n`n");
}
if ($session[user][gesundheit]>=1) {
output ("`$`n`n---------------`n`n");
output ("`@Rezept:`n`n Trank der Gesundheit`n`n");
output ("Zutaten:`n`n Schwefel:4 `nKalk: 5 `n Baldrian: 8 `n Beifuß: 8 `n`n");
}

if ($session[user][def]>=1) {
output ("`#`n`n---------------`n`n");
output ("`#Rezept:`n`n Trank des Schutzes`n`n");
output ("Zutaten:`n`n Schwefel:2 `nKalk: 4 `n Baldrian: 7 `n Beifuß: 6 ");



}
break;
// Und so weiter
}[/php]

1. Sieht schöner aus, 2tens ist schneller, als if-if-if.
Oder nimm wenigstens if-elseif-elseif-else :)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do 02 Mär, 2006 06:29 
Offline
Held
Held
Benutzeravatar

Registriert: Di 27 Dez, 2005 18:29
Beiträge: 217
Wohnort: Flensburg
LoGD: http://lyra.x-mashine.de/
Bungo F hat geschrieben:
Das hab ich auch schon gemacht... Das geht dann einfach in den Minus bereich... :(


dann machst du da irgendwo einen fehler... denn in die elseabfrage soll ja auch nicht der befehl "$session[user][schwefel]-=4;
$session[user][kalk]-=3;
$session[user][baldrian]-=6;
$session[user][beifuß]-=1; " z.b. drin stehen.. außerdem hast du im prinzip den satz doch schon drin siehe "else {
output ("Weißt du überhaubt was du zusammenbrauen wolltest? Kaufe oder lese dir das Rezept nochmal genau durch!");

addnav ("Zurück", "alchi.php");
} " das müsste doch gehen bei dir denn? dann änder doch einfach den satz.. oder ist es dann immer noch im minusbereich?
dann würde ich den "trick" verwenden wie in diesem Beispiel:
"$session[user][schwefel]+=4;
$session[user][kalk]+=3;
$session[user][baldrian]+=6;
$session[user][beifuß]+=1", denn donn müsste der wert wieder dem ausgangswert entsprechen. gilt natürlich zu testen.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr 03 Mär, 2006 17:40 
Offline
Eingeweihter
Eingeweihter

Registriert: Do 22 Dez, 2005 17:58
Beiträge: 93
LoGD: http://www.legend-green-dragon.de/logd/ ... illage.php
In der DB wird die Anzahl der Zutaten gespeichert die man im Wald findet... Wenn man sich einen Trank brauen will, muss man die Anzahl der zutaten in dein Feld schreiben die für den Trank benötigt werden und diese Anzahl der Zutaten wird gleichzeitig von der DB abgezogen... Mein Problem ist: Wenn der User weniger Zuaten hat, als die Anzahl die man eigendlich für den Trank benötigt soll eine fehlermeldung kommen wie "Du hast nicht genügend Zutaten etc....". Else Abfrage funzelt da auch nicht... Der User bekommt dann einfach die Fähigkeit ö.ä...


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 7 Beiträge ] 

Alle Zeiten sind UTC + 1 Stunde


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 0 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen
Du darfst keine Antworten zu Themen in diesem Forum erstellen
Du darfst deine Beiträge in diesem Forum nicht ändern
Du darfst deine Beiträge in diesem Forum nicht löschen
Du darfst keine Dateianhänge in diesem Forum erstellen

Suche nach:
Gehe zu:  
cron
POWERED_BY
Deutsche Übersetzung durch phpBB.de
anpera.net - Impressum