Hi zusammen
Ich hab ein Problem und kann mir absolut nicht erklären woran es liegen könnte.
Ich habe eine simple Ressourcen Aktualisierung mit jquery und ajax gebaut, 1 der 3 Rohstoffe wird auch vernünftig aktualisiert aber die anderen beiden garnicht obwohl der Aufbau komplett identisch ist, nur die Werte der zu aktualisierenden Rohstoffe wurde verändert.
Ich weiß nicht ob ihr mir erklären könnt woran das liegt aber werde mal Auszüge aus den scripten posten.
JQuery / Ajax
Lehm Script das von Ajax geladen wird
Holz Script das von Ajax geladen wird
Ressourcen Klasse
Die Rohstoffe aus der Lehmgrube werden aktualisiert aber aus der Holzfarm garnicht obwohl sämtliche Werte die ich über var_dump geprüft habe, stimmen nur ausser der letzter_tick_holz wird in der Datenbank nix weiter von der Holzfarm aktualisiert und ich hab kein Plan warum, da alles identich ist.
Ka ob sich hier wer zurecht findet und mir eventuell sagen kann, weshalb das nur für eine Rohstoff Art funktioniert.
LG
Ascalon
Ich hab ein Problem und kann mir absolut nicht erklären woran es liegen könnte.
Ich habe eine simple Ressourcen Aktualisierung mit jquery und ajax gebaut, 1 der 3 Rohstoffe wird auch vernünftig aktualisiert aber die anderen beiden garnicht obwohl der Aufbau komplett identisch ist, nur die Werte der zu aktualisierenden Rohstoffe wurde verändert.
Ich weiß nicht ob ihr mir erklären könnt woran das liegt aber werde mal Auszüge aus den scripten posten.
JQuery / Ajax
Code:
function getLehmGesamt(){ $(document).ready(function(){ var timeout = 1000; $.ajax({ type: "GET", url: "js/php/ressourcen/lehm_gesamt.php" }).done(function(result){ $("#lehm_gesamt").html(result); window.setTimeout("getLehmGesamt()", timeout); }); }); }getLehmGesamt(); function getHolzGesamt(){ $(document).ready(function(){ var timeout = 1000; $.ajax({ type: "GET", url: "js/php/ressourcen/holz_gesamt.php" }).done(function(result){ $("#holz_gesamt").html(result); window.setTimeout("getHolzGesamt()", timeout); }); }); }getHolzGesamt();
PHP-Code:
session_start();
require_once "../../../libs/BenutzerSession.php";
require_once "../../../libs/Ressourcen.php";
$benutzer_session = new BenutzerSession();
$lehm = new Lehmgrube_Tick($benutzer_session->getBenutzerSessionName());
$lehm->getLehmGesamt();
PHP-Code:
session_start();
require_once "../../../libs/BenutzerSession.php";
require_once "../../../libs/Ressourcen.php";
$benutzer_session = new BenutzerSession();
$holz = new Holzfarm_Tick($benutzer_session->getBenutzerSessionName());
$holz->getHolzGesamt();
PHP-Code:
////////////////////////////////////////////////////////////////////////////////
/* LEHMGRUBE */
////////////////////////////////////////////////////////////////////////////////
class Lehmgrube_Tick extends Ressourcen{
public function __construct($user_name) {
parent::__construct($user_name);
$this->user_name = $user_name;
$this->initLehmgrube();
}
private function initLehmgrube(){
$this->gebaeude_name = "Lehmgrube";
$this->pow_base = 2;
$this->pow_exp = 5;
$this->ressourcenGebaeudeMaxStufe($this->gebaeude_name);
$this->ressourcenProduktionProStunde($this->gebaeude_stufe);
}
public function getLehmTickProStunde(){
return htmlspecialchars($this->ress_tick_pro_stunde);
}
public function getLehmGesamt(){
$db = new Datenbank();
$sql = "SELECT `lehm_gesamt`, `letzter_tick_lehm` FROM `ressourcen` WHERE `user_name` = ?";
$stmt = $db->db->prepare($sql);
$stmt->bind_param("s", $this->user_name);
$stmt->execute();
$stmt->bind_result($this->lehm_gesamt, $this->letzter_tick);
$stmt->fetch();
$stmt->close();
$timestamp_db = strtotime($this->letzter_tick);
$timestamp_now = time();
$time_diff = $timestamp_now - $timestamp_db;
$this->ress_tick_pro_sekunde = $time_diff * ($this->ress_tick_pro_stunde / 3600);
$this->lehm_gesamt = $this->lehm_gesamt + $this->ress_tick_pro_sekunde;
$dateTime_now = date("Y.m.d H:i:s");
$sql = "UPDATE `ressourcen` SET `lehm_gesamt` = ?, `letzter_tick_lehm` = ? WHERE `user_name` = ?";
$stmt = $db->db->prepare($sql);
$stmt->bind_param("dss", $this->lehm_gesamt, $dateTime_now, $this->user_name);
$stmt->execute();
$stmt->close();
$db->db->close();
echo intval($this->lehm_gesamt);
}
}
////////////////////////////////////////////////////////////////////////////////
/* HOLZFARM */
////////////////////////////////////////////////////////////////////////////////
class Holzfarm_Tick extends Ressourcen{
public function __construct($user_name) {
parent::__construct($user_name);
$this->user_name = $user_name;
$this->initHolzfarm();
}
private function initHolzfarm(){
$this->gebaeude_name = "Holzfarm";
$this->pow_base = 2;
$this->pow_exp = 5;
$this->ressourcenGebaeudeMaxStufe($this->gebaeude_name);
$this->ressourcenProduktionProStunde($this->gebaeude_stufe);
}
public function getHolzTickProStunde(){
return htmlspecialchars($this->ress_tick_pro_stunde);
}
public function getHolzGesamt(){
$db = new Datenbank();
$sql = "SELECT `holz_gesamt`, `letzter_tick_holz` FROM `ressourcen` WHERE `user_name` = ?";
$stmt = $db->db->prepare($sql);
$stmt->bind_param("s", $this->user_name);
$stmt->execute();
$stmt->bind_result($this->holz_gesamt, $this->letzter_tick);
$stmt->fetch();
$stmt->close();
$timestamp_db = strtotime($this->letzter_tick);
$timestamp_now = time();
$time_diff = $timestamp_now - $timestamp_db;
$this->ress_tick_pro_sekunde = $time_diff * ($this->ress_tick_pro_stunde / 3600);
$this->holz_gesamt = $this->holz_gesamt + $this->ress_tick_pro_sekunde;
$dateTime_now = date("Y.m.d H:i:s");
$sql = "UPDATE `ressourcen` SET `holz_gesamt` = ?, `letzter_tick_holz` = ? WHERE `user_name` = ?";
$stmt = $db->db->prepare($sql);
$stmt->bind_param("dss", $this->holz_gesamt, $dateTime_now, $this->user_name);
$stmt->execute();
$stmt->close();
$db->db->close();
echo intval($this->holz_gesamt);
}
}
Ka ob sich hier wer zurecht findet und mir eventuell sagen kann, weshalb das nur für eine Rohstoff Art funktioniert.
LG
Ascalon
Kommentar