Daten weg nach einem Post

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Daten weg nach einem Post

    Hallo,

    ich habe ein ganz normales Formular zum Bearbeiten von Datensätzen, die zuerst aus der DB gelesen werden.
    Einen Button, der einen submit ausführt.

    Die geänderten Datensätze werden in die DB geschrieben, aber
    die Felder zeigen wieder die alten Daten an!

    Was mache ich falsch?

    vielen Dank !

    Kiste24

  • #2
    Ein Beispielquellcode wäre nicht verkehrt - so pauschal lässt sich schlecht eine Vermutung anstellen.
    Eventuelle Tippfehler bei PHP-Beispielen können durchaus vorkommen, aber es geht um die grundsätzliche Möglichkeit der Anwendung.

    Es war einmal ein Benutzer, der hatte ein Problem mit ... PHP (http://de3.php.net/manual/de/) MySQL (http://dev.mysql.com/doc/mysql/de/) HTML (http://www.selfhtml.org/)

    Wer suchet, der findet: http://www.php-resource.de/forum/search.php
    Immer noch nichts? Dann frag!


    Mit freundlichen Grüßen,
    @4u

    Kommentar


    • #3
      Okay, zur Obrigen Fragen nochmal den Quelltext :

      PHP-Code:
      <!-- Eingabe Formular -->
      <?php
       
      //Datenbankverbindung testen
      $db = @mysql_connect($dbserver,$dbuser,$dbpass) ;
       
      mysql_select_db($dbname$db);
       
      $result mysql_query("SELECT * FROM tbl_usr WHERE usr_auth_name = '$username'"$db);
      $user mysql_fetch_row($result);
      ?>
            
          <form class="gray" method="post" action="<?php echo $PHP_SELF ?>">
          <table border = "0" bordercolor="FFFFFF"  width="600">
          <tr>
              <td><h2>Login Name</h2></td>
              <td class='field'><h2><? echo "$user[2]"; ?></h2></td>
              <td><h2>Login Passwort</h2></td>
              <td><input type="Text" name="u_passwd" size="30" maxlength="30" <? echo "value='$user[3]'"; ?> onfocus="setBackgroundColor(this, '#FFFF80')" onblur="setBackgroundColor(this)"></td>
          </tr>
          <tr>
              <td><h2>Name</h2></td>
              <td><h2><input type="Text" name="u_name" size="30" maxlength="30" <?  echo "value='$user[0]'"; ?> onfocus="setBackgroundColor(this, '#FFFF80')" onblur="setBackgroundColor(this)"></h2></td>
              <td><h2>Vorname</h2></td>
              <td><h2><input type="Text" name="u_first" size="30" maxlength="30" <?  echo "value='$user[1]'"; ?> onfocus="setBackgroundColor(this, '#FFFF80')" onblur="setBackgroundColor(this)"></h2></td>
          </tr>
          <tr>
              <td><h2>Telefon</h2></td>
              <td><h2><input type="Text" name="u_telefon" size="30" maxlength="30" <? echo "value='$user[5]'"; ?> onfocus="setBackgroundColor(this, '#FFFF80')" onblur="setBackgroundColor(this)"></h2></td>
              <td><h2>Mobil</h2></td>
              <td><input type="Text" name="u_mobil" size="30" maxlength="30" <? echo  "value='$user[9]'"; ?> onfocus="setBackgroundColor(this, '#FFFF80')" onblur="setBackgroundColor(this)"></td>
          </tr>
           <tr>
              <td><h2>Institut</h2></td>
              <td><select CLASS="select" name="u_firma" size="1" maxlength="30" onfocus="setBackgroundColor(this, '#FFFF80')" onblur="setBackgroundColor(this)">
               <?
               
               $result = mysql_query("SELECT * FROM tbl_credit_inst", $db);
               
               while  ($inst= mysql_fetch_row($result)) {
                   if ($inst[0] == $user[8]) { 
                       echo "<OPTION selected value=$inst[0]>$inst[1]";
                   } else {
                       echo "<OPTION value=$inst[0]>$inst[1]";
                   }
               }?>
               </OPTION></select></td>
              <td><h2>E-Mail</h2></td>                      
              <td><input type="Text" name="u_mail" size="30" maxlength="30" <? echo "value='$user[7]'"; ?> onfocus="setBackgroundColor(this, '#FFFF80')" onblur="setBackgroundColor(this)"></td>
          </tr>
          <td colspan=2><input type="Submit" name="submit" value='speichern' ></td>
          <td colspan=2></td>
          </tr>
          
          </table>
          </form>
          <?php
            
      if (isset($submit)) {
              
                
      $result mysql_query("UPDATE tbl_usr SET usr_name='$u_name', usr_firstname='$u_first', usr_auth_passwd='$u_passwd', usr_phone='$u_telefon', usr_mobile='$u_mobil', company=$u_firma, usr_email='$u_mail' WHERE usr_auth_name = '$username'"$db); 
            if (
      $result) {    echo "<h2>Die Daten wurden erfolgreich geändert!\n</h2>";}
            
            }
            
      mysql_close($db);
      Wie schon beschrieben, ist das Problem, das nach dem Speichern, die alten Daten immer noch angezeigt werden.
      Obwohl das Update korrekt die Daten verändert hat.

      vielen Dank

      Kiste24

      Kommentar


      • #4
        schreib deine anweisung für das update ganz oben hin.
        dann klappts.
        [color=red]musse rühre, musse probiere=>iss a pulsgeber ![/color]

        Kommentar


        • #5
          1. wo übergibst du denn $username aus dem formular ?
          2. company=$u_firma solltest du besser in ' ' setzen
          3. das update nach von zu setzen (s. mister_x1) ist auch ne gute idee
          4. or die(mysql_error()) ist immer hilfreich
          Kissolino.com

          Kommentar

          Lädt...
          X