anpera.net

anpera.net

experimental server @home
Aktuelle Zeit: Di 10 Jun, 2025 23:01

Alle Zeiten sind UTC + 1 Stunde




Ein neues Thema erstellen Auf das Thema antworten  [ 11 Beiträge ] 
Autor Nachricht
BeitragVerfasst: Mi 27 Apr, 2005 18:43 
Offline
Marquis Pherae
Marquis Pherae

Registriert: Mi 09 Feb, 2005 16:01
Beiträge: 3925
Wohnort: Basel
Geschlecht: Männlich
Die Probleme häufen sich langsam...
Keine Ahnung, warum diesmal was falsch läuft...
$this->bbcode_second_pass_code('', '"spendgold":
addnav("Zurück zur Gilde","gilden.php?op=drin&ID=".urlencode($row['gildenid'])."&name=".urlencode($row['gildenname'])."");
if ($row['gildenschatzkammer']==1)
$goldlager = 400000;
if ($row['gildenschatzkammer']==2)
$goldlager = 1000000;
if ($row['gildenschatzkammer']==3)
$goldlager = 2000000;
$platzuebrig = $goldlager-$row['gildengold'];
if ($_GET['act']=="")
{
output("In der Schatzkammer gibt es Platz für `^".$platzuebrig." Gold`&.");
output("<form action='gilden.php?op=drin&gilde=spendgold&act=spend&ID=".urlencode($row['gildenid'])."' method='post'><input name='spend' lengt='10' maxlenght='10'><input type='submit' value='Spenden'></form>",true);
addnav("","gilden.php?op=drin&gilde=spendgold&act=spend&ID=".urlencode($row['gildenid'])."");
}
if ($_GET['act']!="")
{
if ( ($row['gildengold'] + $_POST['spend']) > $platzuebrig )
output("`\$Fehler: Die Schatzkammer ist nicht gross genug für soviel Geld.");
elseif ($_POST['spend']<0)
output("`\$Fehler: Du kannst doch keine negativen Werte in den Schatz einzahlen.");
elseif ($session['user']['gold'] < $_POST['spend'])
output("`\$Fehler: DU hast nicht genügend Gold zur Verfügung.");
else
{
$spendgold = $_POST['spend'];
db_query ("UPDATE gilden SET gildengold=gildengold+'{$spendgold}' WHERE gildenid='".urldecode($_GET['ID'])."'");
$session['user']['gold'] -= $spendgold;
output("Du hast `^".$_POST['spend']." Gold`& gespendet");
db_query ("INSERT INTO commentary (postdate,section,author,comment) VALUES (now(),'Gilden ".$_GET[ID]."',".$session['user']['acctid'].",'/me `\@wurde in die Gilde aufgenommen!')");
}
}
break;')

Die Veriable Platzübrig wird richtig angezeigt. Aber sobald man bei eienr Grenze von 276943 Gold angelangt ist, kann nichts mehr eingezahlt werden....
Sieht jemand meinen Fehler?
Danke schon im Vorraus


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi 27 Apr, 2005 21:48 
Offline
Freak
Freak

Registriert: Mo 06 Sep, 2004 15:17
Beiträge: 3236
Geschlecht: Männlich
$this->bbcode_second_pass_code('', '$_POST['spend']) > $platzuebrig )')

ersetz das mal durch:

$this->bbcode_second_pass_code('', '$_POST['spend']) < $platzuebrig )')


sry, wenns falsch ist, aber glaub es liegt mehr daran...
Bin mir aber nicht sooo sicher, aber das wär jetzt die einzige stelle dir mir aufgefallen ist


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do 28 Apr, 2005 05:44 
Offline
Marquis Pherae
Marquis Pherae

Registriert: Mi 09 Feb, 2005 16:01
Beiträge: 3925
Wohnort: Basel
Geschlecht: Männlich
Kevz hat geschrieben:
$this->bbcode_second_pass_code('', '$_POST['spend']) > $platzuebrig )')

ersetz das mal durch:

$this->bbcode_second_pass_code('', '$_POST['spend']) < $platzuebrig )')


sry, wenns falsch ist, aber glaub es liegt mehr daran...
Bin mir aber nicht sooo sicher, aber das wär jetzt die einzige stelle dir mir aufgefallen ist



Wenn ich das so mach, dann bedeutet das, dass wenn der Goldi nhalt der Gilde PLUS das gespendete Gold KLEINER als der Übrige Platz sind, soll die Meldung kommen, das nicht genügend Platz is :?
(Oder versteh ich wieder mal was nicht richtig ^^)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do 28 Apr, 2005 08:22 
Offline
Freak
Freak

Registriert: Mo 06 Sep, 2004 15:17
Beiträge: 3236
Geschlecht: Männlich
Versuch es doch mal^^, solche probs hatte ich auch mal bringen einen leicht durcheinander ;)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do 28 Apr, 2005 08:39 
Offline
Großmeister
Großmeister

Registriert: Mi 15 Dez, 2004 00:41
Beiträge: 467
Wohnort: München
Mich würde das DB-Feld "gildengold" interessieren. Haste da mal nähere Infos zu?

_________________
A bus station is where busses stop. A train station is where trains stop. On my desk there is a workstation...


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do 28 Apr, 2005 11:45 
Offline
Marquis Pherae
Marquis Pherae

Registriert: Mi 09 Feb, 2005 16:01
Beiträge: 3925
Wohnort: Basel
Geschlecht: Männlich
Chaosmaker hat geschrieben:
Mich würde das DB-Feld "gildengold" interessieren. Haste da mal nähere Infos zu?


Sollte int(11) unsigned Not null default '0' sein, wenn ich mich nicht irre...


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do 28 Apr, 2005 12:43 
Offline
Freak
Freak
Benutzeravatar

Registriert: Di 02 Mär, 2004 18:16
Beiträge: 1206
mach int(4) UNSIGNED NOT NULL default '0' draus

_________________
R.I.P.
†26.7.2004 - 20.3.2006†
†MeteorA†


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do 28 Apr, 2005 14:03 
Offline
Großmeister
Großmeister

Registriert: Mi 15 Dez, 2004 00:41
Beiträge: 467
Wohnort: München
Mir ging es um die Länge, int(11) sollte reichen.
Mit int(4) dagegen wird es noch früher Fehler geben.

Einen Datenbankfehler an dieser Stelle würd ich dann mal ausschließen.
Was genau heißt denn "kann man nichts mehr einzahlen"? Kommt eine von Deinen vorgegebenen Meldungen? Ist es exakt bei diesem Wert oder war das nur ein Beispiel?

_________________
A bus station is where busses stop. A train station is where trains stop. On my desk there is a workstation...


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do 28 Apr, 2005 15:48 
Offline
Marquis Pherae
Marquis Pherae

Registriert: Mi 09 Feb, 2005 16:01
Beiträge: 3925
Wohnort: Basel
Geschlecht: Männlich
Chaosmaker hat geschrieben:
Mir ging es um die Länge, int(11) sollte reichen.
Mit int(4) dagegen wird es noch früher Fehler geben.

Einen Datenbankfehler an dieser Stelle würd ich dann mal ausschließen.
Was genau heißt denn "kann man nichts mehr einzahlen"? Kommt eine von Deinen vorgegebenen Meldungen? Ist es exakt bei diesem Wert oder war das nur ein Beispiel?



Es kommt die Meldung, dass der Schatz voll sei, und bei exakt diesem Wert, nur 1 Gold mehr und der Schatz "sei voll"
Der Wert, der angibt, wieviel Gold die Gilde noch Platz hat, stimmt, und bie der Überprügung ist es ja die gleiche Variable, also sollte es eigentlich nicht passieren... Aber es passiert ja :(


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do 28 Apr, 2005 17:09 
Offline
Großmeister
Großmeister

Registriert: Mi 15 Dez, 2004 00:41
Beiträge: 467
Wohnort: München
Laß an der Stelle, wo die Meldung erscheint, mal zusätzlich die 3 Variablen $row['gildengold'], $_POST['spend'] und $platzuebrig ausgeben.

_________________
A bus station is where busses stop. A train station is where trains stop. On my desk there is a workstation...


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr 29 Apr, 2005 11:57 
Offline
Marquis Pherae
Marquis Pherae

Registriert: Mi 09 Feb, 2005 16:01
Beiträge: 3925
Wohnort: Basel
Geschlecht: Männlich
Chaosmaker hat geschrieben:
Laß an der Stelle, wo die Meldung erscheint, mal zusätzlich die 3 Variablen $row['gildengold'], $_POST['spend'] und $platzuebrig ausgeben.



Ui, Danke :wink:

Dank dem Output weiss ich nun, dass der Fehler nur bedingt im Code selbst lag....
Es war mein Fehler, das Gold, welches in der Gilde enthalten ist zum gespendeten Gold dazuzuzählen und prüfen, ob der Betrag grösser als die Variable $platzuebrig ist, denn $platzuebrig setzt sich aus der Grösse der Schatzkammer MINUS dem Gold in der Gilde zusammen. Der Summand $row['gildengolg'] war demnach 1mal zuviel enthalten :pein:


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

Alle Zeiten sind UTC + 1 Stunde


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 27 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