anpera.net

anpera.net

experimental server @home
Aktuelle Zeit: Do 14 Nov, 2019 06:54

Alle Zeiten sind UTC + 1 Stunde




Ein neues Thema erstellen Auf das Thema antworten  [ 57 Beiträge ]  Gehe zu Seite Vorherige  1, 2, 3
Autor Nachricht
 Betreff des Beitrags:
BeitragVerfasst: Mo 19 Mär, 2007 15:09 
Offline
Lehrling
Lehrling

Registriert: Sa 28 Okt, 2006 00:43
Beiträge: 44
LoGD: http://www.logd.wing-clan.de/
hm.. ich weiß leider nicht mehr, woher ich es habe...

Aber, wenn ich es genau betrachte, wird es wohl mit den Häusern gekommen sein :)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo 19 Mär, 2007 15:34 
Offline
Lehrling
Lehrling

Registriert: Di 13 Mär, 2007 21:19
Beiträge: 45
Ich hab au dat Häuser teil drauf, aber kein Hunger usw^^

Naja... aber bitte mache an dem KuF weiter das is nämlich geilo :p


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo 19 Mär, 2007 16:58 
Offline
Freak
Freak
Benutzeravatar

Registriert: Mi 06 Jul, 2005 19:10
Beiträge: 543
Wohnort: Bremen
Geschlecht: Männlich
LoGD: http://my-logd.com/motwd
Harthas hat geschrieben:
[php]ALTER TABLE accounts ADD `kf_spiel` tinyint(4) NOT NULL default '0',
ADD `kf_lvl` tinyint(4) NOT NULL default '1',
ADD `kf_titel` text NOT NULL,
ADD `kf_day` int(11) NOT NULL default '0',
ADD `kf_newday` tinyint(4) NOT NULL default '0',
ADD `kf_tagesbericht` text NOT NULL,
ADD `kf_tagrelation` tinyint(4) NOT NULL default '0',
ADD `kf_einwohner` int(11) NOT NULL default '1000',
ADD `kf_palast` tinyint(4) NOT NULL default '0',
ADD `kf_kathedrale` tinyint(4) NOT NULL default '0',
ADD `kf_land` int(11) NOT NULL default '10000',
ADD `kf_landnutzung` int(11) NOT NULL default '0',
ADD `kf_land_kauf` tinyint(4) NOT NULL default '0',
ADD `kf_taler` int(11) NOT NULL default '2000',
ADD `kf_muehle` tinyint(4) NOT NULL default '1',
ADD `kf_marktplatz` tinyint(4) NOT NULL default '1',
ADD `kf_lagerhalle` tinyint(4) NOT NULL default '0',
ADD `kf_schmiede` tinyint(4) NOT NULL default '0',
ADD `kf_eisenmine` tinyint(4) NOT NULL default '0',
ADD `kf_kohlenmine` tinyint(4) NOT NULL default '0',
ADD `kf_salzmine` tinyint(4) NOT NULL default '0',
ADD `kf_steinbruch` tinyint(4) NOT NULL default '0',
ADD `kf_jaeger` tinyint(4) NOT NULL default '0',
ADD `kf_holzfaeller` tinyint(4) NOT NULL default '1',
ADD `kf_schaffarm` tinyint(4) NOT NULL default '0',
ADD `kf_tuchfabrik` tinyint(4) NOT NULL default '0',
ADD `kf_kleiderfabrik` tinyint(4) NOT NULL default '0',
ADD `kf_schweinefarm` tinyint(4) NOT NULL default '0',
ADD `kf_weinberg` tinyint(4) NOT NULL default '0',
ADD `kf_brennerei` tinyint(4) NOT NULL default '0',
ADD `kf_waffenfabrik` tinyint(4) NOT NULL default '0',
ADD `kf_goldmine` tinyint(4) NOT NULL default '0',
ADD `kf_edelsteinmine` tinyint(4) NOT NULL default '0',
ADD `kf_goldschmied` tinyint(4) NOT NULL default '0',
ADD `kf_korn` int(11) NOT NULL default '5000',
ADD `kf_salz` tinyint(4) NOT NULL default '0',
ADD `kf_alkohol` tinyint(4) NOT NULL default '0',
ADD `kf_waffen` tinyint(4) NOT NULL default '0',
ADD `kf_wildfleisch` tinyint(4) NOT NULL default '0',
ADD `kf_schweinefleisch` tinyint(4) NOT NULL default '0',
ADD `kf_wolle` tinyint(4) NOT NULL default '0',
ADD `kf_tuch` tinyint(4) NOT NULL default '0',
ADD `kf_kleider` tinyint(4) NOT NULL default '0',
ADD `kf_wein` tinyint(4) NOT NULL default '0',
ADD `kf_stahl` tinyint(4) NOT NULL default '0',
ADD `kf_stein` tinyint(4) NOT NULL default '0',
ADD `kf_eisen` tinyint(4) NOT NULL default '0',
ADD `kf_kohle` tinyint(4) NOT NULL default '0',
ADD `kf_holz` int(11) NOT NULL default '100',
ADD `kf_gold` tinyint(4) NOT NULL default '0',
ADD `kf_edelsteine` tinyint(4) NOT NULL default '0',
ADD `kf_schmuck` tinyint(4) NOT NULL default '0',
ADD `kf_justiz` tinyint(4) NOT NULL default '5',
ADD `kf_zoll` tinyint(4) NOT NULL default '10',
ADD `kf_steuer` tinyint(4) NOT NULL default '10',
ADD `kf_scout` tinyint(4) NOT NULL default '1',
ADD `kf_miliz` tinyint(4) NOT NULL default '3',
ADD `kf_infanterie` tinyint(4) NOT NULL default '0',
ADD `kf_kavallerie` tinyint(4) NOT NULL default '0',
ADD `kf_artellerie` tinyint(4) NOT NULL default '0',
ADD `kf_garde` tinyint(4) NOT NULL default '0',
ADD `kf_manoever` tinyint(4) NOT NULL default '0',
ADD `kf_krieg` tinyint(4) NOT NULL default '0',
ADD `kf_gegner` text NOT NULL;[/php]


Mal etwas anderes...
Wenn ich mir das oben so anschaue, wird mir ehrlich gesagt, verdammt schlecht... Wäre das alles nicht in einer seperaten Tabelle wesentlich besser aufgehoben, als dies alles noch in die Accountstabelle zu quetschen????

_________________
Das schwarze Schaf der LotGD-Community, 2. platzierter, beim Giga.de Homepage-Award 2007 und 1. platzierter beim German Web Award 2008.
PC-ACTION meint: "Sehr gut" für MotWD!
Mind of the White Dragon => http://my-logd.com/motwd


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di 20 Mär, 2007 19:46 
Offline
Lehrling
Lehrling

Registriert: Sa 28 Okt, 2006 00:43
Beiträge: 44
LoGD: http://www.logd.wing-clan.de/
ich war jung und brauchte das Geld :cry:

Okay... habe ja gerade erst mit SQL und PHP angefangen. Das sieht man dann wahrscheinlich ja auch, wenn man sich die Scripte anschaut :???:
Daher war mir bisher der Umgang mit den Tabellen und entsprechenden SQL Verweisen ja noch nicht so bewusst.. (und ist noch nicht eingefleischt)

Aber es steht auf der ToDo Liste ganz weit oben!


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Sa 28 Jun, 2008 12:25 
Offline
Lehrling
Lehrling
Benutzeravatar

Registriert: Mo 07 Apr, 2008 16:56
Beiträge: 26
Geschlecht: Weiblich
Hallo.

Ich habe mal eine Frage. Das Spiel Krieg & Frieden ist ja recht schön, aber wie DoM schon schrieb in der account Tabelle wollte ich es nicht machen. Da es doch viele Befehle sind. kann mir einer helfen wie ich es in einer seperaten Tabelle unterbringen kann und welche dateien ich da noch ändern muß?
Für Antworten wäre ich sehr dankbar, PhP und MySQL ist noch im Lernstadium von mir. ( Habe Suchfunktion schon benutzt leider nix gefunden, da immer dieser hinweis kommt.) ;)
LG Franzi


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Sa 28 Jun, 2008 13:39 
Offline
Lehrling
Lehrling

Registriert: Sa 28 Okt, 2006 00:43
Beiträge: 44
LoGD: http://www.logd.wing-clan.de/
Ich habe mich ja damals auch im Lernstadium befunden und befinde
mich gerade "naja" in Lernphase2 :)

Alle php Dateien zielen ja auf die Accountstabelle ab, daher muss ich es sicherlich komplett umschreiben.

Jedenfalls versuche ich mal mein Glück :)

Vielleicht ist es Sonntag fertig!


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Sa 28 Jun, 2008 15:52 
Offline
Lehrling
Lehrling

Registriert: Sa 28 Okt, 2006 00:43
Beiträge: 44
LoGD: http://www.logd.wing-clan.de/
es wäre alles viel schneller fertig, wenn ich folgendes verstehen würde:
die ganze tabelle accounts mit den Feldern ist abrufbar mit $session[user][...]
WO wird dies gefüllt/gesetzt? Und das wenn man am $session[user][xyz] was ändert, direkt in die Datenbank geschrieben wird?

Ich verstehe es einfach nicht... :-(

Habe eine neue Tabelle krieg_und_frieden.
Übergebe acctid als "Secondary Key".
Habe einfach in allen kf_.. skripten aus $session, $kfsession gemacht.
Jetzt muss ich doch nur $kfsession so belegen, wie es mit $session funktioniert...
Aber wie?
Die ganze Zeit mit SQL Befehlen rumzuhantieren ist doof.
session_register("kfsession"); muss es doch sein, oder?
Aber wie weiter?
Vielleicht mal kurze Infos eines Pros?

Naja... sind wahrscheinlich wirkliche Basisverständnisprobleme von PHP, die ich habe :(


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Mi 02 Jul, 2008 23:51 
Offline
Lehrling
Lehrling

Registriert: Sa 28 Okt, 2006 00:43
Beiträge: 44
LoGD: http://www.logd.wing-clan.de/
Sorry,

ich kann es nicht. Bin einfach zu doof in der Array Behandlung.
Man mag sich wundern, wenn man die php Dateien ansieht.
Aber ich krieg es einfach nicht hin, dass er per $sql die Daten
ausliesst, sie in der $kfsession[$userid][feldname(n)] speichert, in den Scripts
verändert und sie entsprechend wieder dem user in die Tabelle per "UPDATE"
speichert. :dumm:

Also eigentlich Basic.. aber gebe erst mal wieder auf.


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Do 03 Jul, 2008 06:40 
Offline
Marquis Pherae
Marquis Pherae

Registriert: Mi 09 Feb, 2005 16:01
Beiträge: 3922
Wohnort: Basel
Geschlecht: Männlich
Ohje, ohje, ohje. Offensichtlich unterliegtst du einigen Fehlannahmen, die dich verwirren. Zuerst einmal:

Der Ort, wo "$session['user']" "definiert" wird, ist die common.php. Und zwar sieht das ganze, in etwa, so aus:

$this->bbcode_second_pass_code('', '$sql = "SELECT * FROM accounts WHERE acctid = ".$session['user']['acctid'];
$res = db_query($sql);
$session['user'] = db_fetch_assoc($res);')

Das $session['user']['acctid'] kommt noch vom vorherigen pagehit und wird in der Session gespeichert. Und nein, $session['user']['xyz'] wird *nicht* sofort gespeichert (Unter PHP5 wäre das mit einem Trick möglich). Es wird *alles* auf *einmal* in die Datenbank eingetragen - und zwar mithilfe der Funktion saveuser(). Es ist dringenst davon abzuraten, dein Zeugs auf diese Weise zu Regeln, da diese Bequemlichkeit das Problem des Verlorenen Updates hervorbringt.

Und nein, session_register() ist auch nicht nötig - und eigentlich sogar schon für $session['user'] falsch.


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Do 03 Jul, 2008 22:38 
Offline
Lehrling
Lehrling

Registriert: Sa 28 Okt, 2006 00:43
Beiträge: 44
LoGD: http://www.logd.wing-clan.de/
Nun...

in meiner common.php kann ich eben diesen $sql = "SELECT * FROM accounts WHERE acctid = ".$session['user']['acctid']; nicht finden...

Aber habe es dann doch so versucht.

So sieht meine "load" function aus:

$this->bbcode_second_pass_code('', '
function load_values(){
global $kfsession, $session;
$sql = "Select * from krieg_und_frieden where acctid='".$session['user']['acctid']."'";
$result = db_query($sql);
$kfsession['user'] = db_fetch_assoc($result);
}')

okay.. hat erst eine while schleife... ist aber quatsch, da es ja nur ein Datensatz sein kann :)

Nur... ist 'user' jetzt auch das, was ich will? Oder hätte ich $user = $session['user']['acctid']; und $kfsession[$user] machen müssen?
Naja.. jedenfalls werden jetzt mal wieder Werte in den anderen Scripten anzeigt :)

Habe in jedes script dann oben load_values() geschrieben.

Muss nun noch ein save_values() basteln. Habe den Vorschlag bekommen, eine Prüfung zu machen ob sich zu Inhalt der Tabelle bzgl. des Users und in kfsession['user'] ein Feld verändert hat und nur diese dann mit foreach upzudaten. (in ein $update array die geänderten Werte zu schreiben)
Aber das will noch nicht so ganz klappen, da ich mal wieder mit feld und inhalt kämpfe :(

Die Funktion wollte ich dann immer an das Ende der jeweiligen php Datei ausführen lassen. (Naja, oder dort, wo der submit/ok button ausgeführt wird.)


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: So 06 Jul, 2008 12:41 
Offline
Lehrling
Lehrling

Registriert: Sa 28 Okt, 2006 00:43
Beiträge: 44
LoGD: http://www.logd.wing-clan.de/
wollte nur kurz Bescheid geben, dass sich das Mod nun doch nach den anfänglichen Problemen in der Alpha Testphase befindet :-)

Danke nochmal Eliwood für den Tipp!
Der Satz:
Zitat:
Es wird dringenst davon anzuraten, dein Zeugs auf diese Weise zu Regeln, da diese Bequemlichkeit das Problem des Verlorenen Updates hervorbringt.


Habe ich mit "abzuraten" übersetzt. Meine Update Funktion sieht derzeit so aus:

$this->bbcode_second_pass_code('', 'function save_values($user){
global $kfsession, $session;
$update = false;
$query = "Select * from krieg_und_frieden where acctid='".$user."'";
$result = db_query($query);
if (!$row = db_fetch_assoc($result)) die ("Konnte nix laden");

foreach ($row as $key => $value) {
if ($row[$key] != $kfsession[$user][$key]){
//output("Key: $key; Value: $value -> ".$kfsession[$user][$key]."`n");
$update[$key] = $kfsession[$user][$key];
}

}
if (is_array($update)) {
$sql = false;
foreach ($update as $key => $value) {
if ($sql) $sql .= ", ";
$sql .= "$key = '".addslashes($value)."'";
}
//output("Changings:`n".$sql);
$query = "UPDATE krieg_und_frieden SET $sql WHERE acctid='".$user."'";
$an_id = db_query($query);
}
}')

Ist sie so okay? Funktioniert jedenfalls :-)
(Im $user übergebe ich immer $session['user']['acctid'])

Die "load" Funktion mache ich nun auch mit Übergabe des $user. Habe nur manchmal den Effekt gehabt, dass kurzzeitig die $session weg war und die load Funktion fehlschlug. Mit "Refresh" war aber wieder alles da. Vermute natürlich, dass ich extremen Traffic produziere, da ich in jedem Script die load Funktion am Anfang ausführe, damit es funktioniert. Wahrscheinlich muss ich das gar nicht und es gibt noch einen Trick, den ich derzeit noch nicht kenne.


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: So 06 Jul, 2008 19:50 
Offline
Lehrling
Lehrling

Registriert: Sa 28 Okt, 2006 00:43
Beiträge: 44
LoGD: http://www.logd.wing-clan.de/
Ich weiß nicht, ob es erlaubt ist "Werbung" zu machen, aber ich habe die Version 0.9.5 BETA in meinem Dorf freigeschaltet:
http://***

Das Dorf braucht nicht beachtet werden. Habe da nix dolles und auch nichts "ordentlich" eingestellt und da wird auch sonst nicht gespielt! :?:

Es geht nur um dieses Mod!

Noch möchte ich es nicht als Download bereitstellen und daher dürft ihr mein Dorf töten, anstatt das nachher durch den Einbau der Beta Version euer Dorf drunter leidet!

Status bisher:
ToDo:
Administration, Events als Tabelle, Militär
Ansonsten scheint alles zu laufen.

Bug Report dann bitte hier :)

(OKAY... unter "source" findet man dann beginnend mit "kf_" alle Dateien. Auch README, CHANGELOG und SQL DUMPS. Aber Verwendung auf eigene Gefahr! Und vorige Version muss komplett entfernt werden! Auch die Änderung an bestehenden Dateien, da die Felder ja nicht mehr in der Accountstabelle geführt werden!)

Edit by Eliwood: Nein, ist es nicht.


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Di 08 Jul, 2008 16:48 
Offline
Marquis Pherae
Marquis Pherae

Registriert: Mi 09 Feb, 2005 16:01
Beiträge: 3922
Wohnort: Basel
Geschlecht: Männlich
Sir Drink a lot hat geschrieben:
wollte nur kurz Bescheid geben, dass sich das Mod nun doch nach den anfänglichen Problemen in der Alpha Testphase befindet :-)

Danke nochmal Eliwood für den Tipp!
Der Satz:
Zitat:
Es wird dringenst davon anzuraten, dein Zeugs auf diese Weise zu Regeln, da diese Bequemlichkeit das Problem des Verlorenen Updates hervorbringt.

[...]


Ja, meinte ich tatsächlich so. Der Verschreiber tut mir Leid.
Und ja, sagen wir, deine Lösung ist befriedigend. Allerdings alles andere als optimal - sorry.


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Di 08 Jul, 2008 21:21 
Offline
Lehrling
Lehrling

Registriert: Sa 28 Okt, 2006 00:43
Beiträge: 44
LoGD: http://www.logd.wing-clan.de/
Nein. Kein sorry :)

Bin ja dankbar für jede Kritik. Leider weiß ich, dass es mir zu erklären, wie es optimal geht, doch etwas aufwendig wäre...wenn die Basics nicht so ausgeprägt sind. :( Ich sag mal: Das Ding läuft :) *da bin ich ja schon mal stolz*

Aber wenn man sich eben die Scripte anschaut, gerade der Häuser Array mit (derzeit bei mir) 25 * 17 Felder :shock: ansieht, da wird einem Angst und Bange :) Das Genie beherrscht das Chaos. :dumm: Müsste eigentlich auch eine eigene Tabelle dafür machen. Gerade für die Erweiterungen, die mir im Kopf rumschweben.

Naja... man lernt ja weiter. Wir testen erst mal, dann kann ich zumindest die 1.0 hier hochladen.


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Do 01 Okt, 2009 12:25 
Offline
Lehrling
Lehrling

Registriert: Mo 24 Mai, 2004 16:39
Beiträge: 32
Hi!

Ich weiß der Thread ist schon bissle veraltet aber ich habe eine Frage zu KuF..

Ist es normal das alles auf 127 begrenzt ist oder muss ich noch irgendwas "aktivieren" das man auch mehr haben kann?


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Fr 02 Okt, 2009 07:06 
Offline
Lehrling
Lehrling

Registriert: Sa 28 Okt, 2006 00:43
Beiträge: 44
LoGD: http://www.logd.wing-clan.de/
Du hast die Datenbankfelder zu klein definiert.
Ändere die Felder in der MySQL Datenbank von "tinyint" zu "int".


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Fr 02 Okt, 2009 14:49 
Offline
Lehrling
Lehrling

Registriert: Mo 24 Mai, 2004 16:39
Beiträge: 32
ah danke. das ich da nicht selber drauf gekommen bin *g*


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 57 Beiträge ]  Gehe zu Seite Vorherige  1, 2, 3

Alle Zeiten sind UTC + 1 Stunde


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast


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