rasputin: (eigentlich funktonierende) function funktioniert nicht

Beitrag lesen

moin moin,
jungs/mädls, wär echt nett wenn jemand rat wüsste, bin am verzweifeln:

<?

error_reporting(E_ERROR | E_WARNING | E_PARSE);
$db=mysql_connect("localhost","root");
mysql_select_db("training") or die ("fehler");

$id=$_GET['id'];

$ergebnis=mysql_query("select * from training where id='$id'");
while ($row=mysql_fetch_array($ergebnis)){
      $datum=$row[datum];
      $art=$row[art];
      $belastungstyp=$row[belastungstyp];
      $km=$row[km];
      $puls=$row[puls];
      $dauer=$row[dauer];
      $bemerkungen=$row[bemerkungen];
      $plan=$row[plan];
      }

#man wählt einen eintrag (per link mit angehängtem "?id=xx") aus und kommt dann auf diese seite, auf der anhand der übergebenen id der eintrag wieder ausgegeben wird und die werte in variablen gespeichert werden.

function eingabe_check($datum,$art,$belastungstyp,$km,$puls,$dauer){
if ($datum == "") $fehler = $fehler." das Datum<br>";
if ($art == "") $fehler = $fehler." die Art des Trainings<br>";
if ($belastungstyp == "") $fehler = $fehler." den Belastungstyp<br>";
if ($km != "")
{
  if (!zahl($km)) {$fehler = $fehler." eine ZAHL für die kilometer<br>";}
  }
if ($puls != "")
{
  if (!zahl($puls)) {$fehler = $fehler." eine ZAHL für den Pulswert<br>";}
  }

if ($dauer == "") {$fehler = $fehler." die Dauer des Trainings<br>";}
 elseif (!zahl($dauer)) {$fehler = $fehler." eine ZAHL für die Dauer des Trainings<br>";}

if ($fehler =="") return 1;
else{ return "Bitte<br><b>".$fehler."</b> eingeben.<br>";}
}

function formular_ausgabe($datum,$art,$belastungstyp,$km,$puls,$dauer,$bemerkungen,$plan){
echo "
<form name="training" method="post" action="edit.php&aktion=check">
Datum.........
;}

if ($aktion="check"){
if(eingabe_check($datum,$art,$belastungstyp,$km,$puls,$dauer)==1){

$jahr=substr($datum, 6, 2);
$month=substr($datum, 3, 2);
$day=substr($datum, 0, 2);
$woche=wochennr($day,$month,$jahr);

if($plan==""){$plan="Erf&uuml;llt";}

$update=mysql_query("update training set datum='$datum' , woche='$woche', art='$art' , belastungstyp='$belastungstyp' , km='$km' , puls='$puls' , dauer='$dauer', plan='$plan' , bemerkungen='$bemerkungen'  WHERE id = '$id'");
echo mysql_error();
if (mysql_affected_rows($db)==1){echo"daten geändert";}else{echo"fehler beim ändern der daten!";}
}
else{
eingabe_check($datum,$art,$belastungstyp,$km,$puls,$dauer);
formular_ausgabe($datum,$art,$belastungstyp,$km,$puls,$dauer,$bemerkungen,$plan);
}
}
else{
formular_ausgabe($datum,$art,$belastungstyp,$km,$puls,$dauer,$bemerkungen,$plan);
}

#und das hier funktioniert jetzt nicht!ich hab mittlerweile den eindruck,dass das ergebnis der eingabe_check() nicht korrekt ist, egal was ich ins formular eingebe.allerdings funktioniert die gleiche eingabe_check()-funktion in ner anderen datei problemlos.

mysql_close($db);
?>

war wahrscheinlich ziemlich verwirrend, kann nicht so gut erklären.der eintrag wird eben nicht geändert, offenbar egal ob die daten korrekt sind oder nicht.hat jemand ne ahnung wo der fehler liegt??ich steh voll aufm schlauch.

thx für jede hilfe!!
mfg ratze