Hi leuts
Ich habe hier ein problem mit einer datei (welch Wunder

) nein, jetzt mal ernst. Es liegt die folgende datei vor:
PHP-Code:
<?php
error_reporting(E_ALL);
include ("db.php"); //Einfügen der db.php und Aufbau der Datenbankverbindung
$query = "SELECT hunger, krankheiten, wohlfuehl, pfund, die FROM `mypet_katzen`";//Die Auszuführende Abfrage
$ergebnis = mysql_query($query) or die ("Achtung Fehler irgendwas!
".mysql_error().""); // Abfrage wird asugeführt
while($row = mysql_fetch_assoc($ergebnis))
{
if ($row["die"] == 10) // Überprüfen ob das Tier als Tot eingestuft werden muss
{
$new_die = 1;
}
else if ($row["krankheiten"] == 1)// Überprüfen ob das Tier krank ist
{
$hunger_new = $row["hunger"] -2;
$wohlfuehl_new = $row["wohlfuehl"] -2;
if ($row["die"]==0)
{
$new_die = 2;
}
else
{
$new_die = $row["die"] +1;
}
}
else if ($row["pfund"] == 1)// Überprüfen ob die Katze ein Häufchen gemacht hat
{
$krankheiten_new = 1;
}
else if ($row["hunger"] >= 6)// Überprüfen ob es Zeit für ein Häufchen ist
{
$pfund_new = 1;
}
else if ($row["hunger"] >= 10 or $row["krankheiten"] > 1 or $row["pfund"] > 1 or $row["wohlfuehl"] >10 or $row["die"] >1) // Alle daten werden auf Cheetingverdacht überprüft, im Falle einer bestätigung erfolgt der Tod des Tieres
{
$new_die = 1;
}
else if ($row["hunger"] <= 10 and $row["krankheiten"] == 0 and $row["pfund"] == 0 and $row["wohlfuehl"] <=10 and $row["die"] != 1) //Was zu tun ist wenn keines der obig vorliegenden Dinge zutrift
{
$hunger_new = $row["hunger"] -1;
$wohlfuehl_new = $row["wohlfuehl"] -1;
$krankheiten_new = 0;
$new_die = $row["die"];
$pfund_new = 0;
}
$eintrag = "UPDATE `mypet_katzen` SET `hunger` = '$hunger_new', `krankheiten` = '$krankheiten_new', `wohlfuehl` = '$wohlfuehl_new', `pfund` = '$pfund_new', `die`= '$new_die'";
$eintragen = mysql_query($eintrag) or die (mysql_error());
echo 'Ausgabe array aus Datenbankabfrage:
';
echo '<pre>';
print_r($row);
echo '</pre>';
}
mysql_close($verbindung);
?>
Nur: Wenn $row["hunger"] == 1 ist, ist am Ende in der DB krankheiten nicht1 sondern beide sind wieder 0! Ein ähnliches Spiel passiert wenn $row["krankheiten"] == 1, dann ist am Ende in der Db die und krankheiten wieder 0. Wieso geschieht dass und vor allem wie lässt es sich beheben? Der Array der mir ausgegeben wird ist vollständig und ohne Fehler.
LG
Garnele