Hallöchen zusammen, da bin ich wieder 
Da ich gerade fleißig dabei bin programmieren zu lernen und meiner Ansicht für die kurze Zeit schon viel gelernt und auch verstanden habe, bin ich gerade dennoch auf ein Problem gestoßen was ich schon seit stunden am behandeln bin, nur leider komme ich nicht auf den Fehler.
Ich habe um einfach mal die zusammenhänge zu lernen,
einen Gebäude bau Ablauf programmiert, mein Problem an der ganzen Sache ist, daß meine UPDATE Funktion nicht wirklich etwas macht, ich könnte mir vorstellen, daß ich vielleicht die Query nicht richtig geschrieben habe, habe aber schon sämtliche Sachen ausprobiert und troz dem komme ich nicht zum gewünschten Ergebnis.
Am Anfang prüfe ich, ob es eine Bauzeit gibt wenn nicht, dann wird geprüft, ob submit und die Anzahl zu bauender Gebäude gesetzt wurden.
Wenn das alles ok ist ( soweit klappt das auch noch ) dann soll die Bauzeit mittels UPDATE in die Datenbank geschrieben werden und das wird leider nicht gemacht. Habe es auch schon mit INSERT INTO probiert, klapp im ersten Durchlauf auch, nur wenn ich dann nach abgelaufener Zeit noch etwas in Auftrag geben möchte, Probiert er natürlich mit INSERT INTO zu schreiben, dabei steht ja schon etwas in der Spalte drin.
Nach Ablauf der Zeit, soll dann eben die vom User eingegebene Anzahl an Gebäude mit UPDATE auf das Gesamtkonto gutgeschrieben werden.
Vom logischen denken her, kann es doch nur mit UPDATE richtig sein oder nicht ?
Nur bleibt nach Bestätigung des Auftrags meine Spalte leider leer ( Fehlermeldung gibt es dann auch keine).
Hier mal das Script dazu
Ps: habe auch schon probiert, die Variablen worin die Updatedaten drin stehen, mit ->bind_param zu übergeben, nur da bekomme ich dann eine Fehlermeldung sowas wie .... in a non object (hab gerade nicht die komplette meldung im Kopf ^^ )

Da ich gerade fleißig dabei bin programmieren zu lernen und meiner Ansicht für die kurze Zeit schon viel gelernt und auch verstanden habe, bin ich gerade dennoch auf ein Problem gestoßen was ich schon seit stunden am behandeln bin, nur leider komme ich nicht auf den Fehler.
Ich habe um einfach mal die zusammenhänge zu lernen,
einen Gebäude bau Ablauf programmiert, mein Problem an der ganzen Sache ist, daß meine UPDATE Funktion nicht wirklich etwas macht, ich könnte mir vorstellen, daß ich vielleicht die Query nicht richtig geschrieben habe, habe aber schon sämtliche Sachen ausprobiert und troz dem komme ich nicht zum gewünschten Ergebnis.
Am Anfang prüfe ich, ob es eine Bauzeit gibt wenn nicht, dann wird geprüft, ob submit und die Anzahl zu bauender Gebäude gesetzt wurden.
Wenn das alles ok ist ( soweit klappt das auch noch ) dann soll die Bauzeit mittels UPDATE in die Datenbank geschrieben werden und das wird leider nicht gemacht. Habe es auch schon mit INSERT INTO probiert, klapp im ersten Durchlauf auch, nur wenn ich dann nach abgelaufener Zeit noch etwas in Auftrag geben möchte, Probiert er natürlich mit INSERT INTO zu schreiben, dabei steht ja schon etwas in der Spalte drin.
Nach Ablauf der Zeit, soll dann eben die vom User eingegebene Anzahl an Gebäude mit UPDATE auf das Gesamtkonto gutgeschrieben werden.
Vom logischen denken her, kann es doch nur mit UPDATE richtig sein oder nicht ?
Nur bleibt nach Bestätigung des Auftrags meine Spalte leider leer ( Fehlermeldung gibt es dann auch keine).
Hier mal das Script dazu
PHP-Code:
<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);
require_once ("../db_config.php");
$sub_button = isset($_POST['submit']);
$saegewerk_auftrag = isset($_POST['saegewerk']) ? trim($_POST['saegewerk']) : false;
$getreidefarm_bau = isset($_POST['getreidefarm']) ? trim($_POST['getreidefarm']) : false;
$aktuelle_zeit = time();
$saegewerk_bauzeit = time()+30;
$set_bauzeit = <<<SQL
UPDATE
`rohstoff_gebaeude`
SET
`saegewerk_bauzeit` = $saegewerk_bauzeit
SQL;
$ende_auftrag = <<<SQL
UPDATE
`rohstoff_gebaeude`
SET
`saegewerk_gesamt` = ?
SQL;
$rest_bauzeit = <<<SQL
SELECT
`saegewerk_bauzeit`
FROM
`rohstoff_gebaeude`
SQL;
$restbauzeit = $db_connect->prepare($rest_bauzeit);
$restbauzeit->execute();
$restbauzeit->bind_result($restzeit_saegewerk);
$restbauzeit->fetch();
if($restzeit_saegewerk < $aktuelle_zeit)
{
if($sub_button || $saegewerk_auftrag)
{
$bauzeit = $db_connect->prepare($set_bauzeit);
$bauzeit->execute();
$bauzeit_ende = $db_connect->prepare($rest_bauzeit);
$bauzeit_ende->execute();
$bauzeit_ende->bind_result($restbau_zeit);
$bauzeit_ende->fetch();
if ($restbau_zeit < $aktuelle_zeit)
{
$saegewerk_gesamt = $db_connect->prepare($ende_auftrag);
$saegewerk_gesamt->bind_param('i' ,$saegewerk_auftrag);
$saegewerk_gesamt->execute();
}
$bauzeit_ende->close();
$bauzeit->close();
}
}
else
{
echo "Momentan ist ein Auftrag in Bearbeitung !";
}
$restbauzeit->close();
$db_connect->close();
?>
Kommentar