Problem zwischen Formular und Session Variablen

NightWatcher

Erfahrenes Mitglied
Hi, hab ein prob und zwar speichert das Script die verdammten Sachen aus dem Formular nicht ab, sondern nimmt die Sachen, die noch in der Session liegen. Der Qeullcode sieht folgendermaßen aus:

PHP:
function account($uname, $userstatus, $rname, $mail, $ort, $homepage, $passwort) {
if (!isset ($_SESSION["uname"]))
{
  header ("Location: $PHP_SELF?op=notlogin");
} else {
         echo"Sie sind nun in ihrem Account Panel.<br>";
         echo"Hier können sie alle ihre Daten bearbeiten.<br><br>";
         echo"<form method='POST' action='$PHP_SELF?op=eintrag'>
  <div align='center'>
    <center>
    <table border='0' cellpadding='0' cellspacing='0' style='border-collapse: collapse' bordercolor='#111111' id='AutoNumber1'>
      <tr>
        <td width='50%' height='22'>User Name:</td>
        <td width='50%' height='22'>"; echo "$uname"; echo"</td>
      </tr>
      <tr>
        <td width='50%' height='22'>Dein Status:</td>
        <td width='50%' height='22'>"; echo "$userstatus"; echo"</td>
      </tr>
      <tr>
        <td width='50%' height='22'>Richtiger Name:</td>
        <td width='50%' height='22'><input type='text' name='rname' value='$rname' size='20'></td>
      </tr>
      <tr>
        <td width='50%' height='22'>E-Mail Adresse:</td>
        <td width='50%' height='22'><input type='text' name='mail' value='$mail' size='20'></td>
      </tr>
      <tr>
        <td width='50%' height='22'>Wohnort:</td>
        <td width='50%' height='22'><input type='text' name='ort' value='$ort' size='20'></td>
      </tr>
      <tr>
        <td width='50%' height='22'>Homepage:</td>
        <td width='50%' height='22'><input type='text' name='homepage' value='$homepage' size='20'></td>
      </tr>
    </table>
    </center>
  </div>
  <p align='center'><input type='submit' value='Abschicken' name='B1'><input type='reset' value='Zurücksetzen' name='B2'></p>
</form>";
}
}
function eintrag ($uname, $passwort, $mail, $rname, $ort, $homepage, $userstatus) {
          if (file_exists("user/$uname")) {
          $Datei = fopen("user/$uname", "w");
          echo fputs($Datei, $uname."|--|".$passwort."|--|".$mail."|--|".$rname."|--|".$ort."|--|".$homepage."|--|".$userstatus);
          fclose($Datei);
          echo"Ihre Änderung wurde erfolgreich durchgenommen.";
          $Datei = file("user/$uname");
          $a = count($Datei);
          $u = $a - 1;
          for ($i = $a; $i >= $u ;$i--) {
          $zeile = $Datei[$i];
          list($uname,$passwort,$mail, $rname, $ort, $homepage, $userstatus) = explode ("|--|", $zeile);

          //    $_SESSION["user_id"] = $data["Id"];
          $_SESSION["uname"] = $uname;
          $_SESSION["passwort"] = $passwort;
          $_SESSION["mail"] = $mail;
          $_SESSION["rname"] = $rname;
          $_SESSION["ort"] = $ort;
          $_SESSION["homepage"] = $homepage;
          $_SESSION["userstatus"] = $userstatus;
         }} else { echo"Userdaten konnten nicht geändert werden.";
           }
         }

Hoffe mir kann jemad helfen.
PS: Bitte entschuldigt mich für den vielen Quelltext...
 
naja die einfachste Lösung, um das zu umgehen wäre wohl, wenn du die Session-Variablen und die Variablen aus dem Formular nicht gleich benennst. bei den Formularvars vielleicht einfach ein "in_" davor oder so...

Ich hoffe du hast auch daran gedacht, die Variablen aus dem Formular so anzusprechen $_POST['variablenname'] ...
 
ähmm, wenns nicht im Post steht, dann ist es auch nicht so ;)

Hast recht, sollte ich vielleicht mal versuchen. Wenns nicht , meld ich mich nochmal, wenns klappt, allerdings auch *G*
 
Zurück