Werte aus der Tabelle überschreiben oder ersetzen???

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

  • Werte aus der Tabelle überschreiben oder ersetzen???

    Hallo zusammen!!

    Stehe grad mal wieder vor nem Problem, dass sich für mich als Newbie momentan noch als nichtlösbar zeigt. Es geht um folgendes:
    Ich habe mir ein Login-Script gebastelt. Dort gibt es auch eine Funktion, bzw. es soll eine Funktion geben, dass man den Benutzernamen ändern kann. Diesen müsste ich dann ja aus der Tabelle löschen und an genau die gleiche Stelle den neuen einfügen. Wie mache ich das?? Hier mein bisheriger PHP-Code:

    PHP-Code:
    <?php
    }elseif(!isset($_POST['olduser']) || $_POST['olduser'] == ""){
    echo 
    '<p align="center">Bitte geben sie ihren alten Benutzernamen ein!<br><br><a href="config.php">Zur&uuml;ck</a></p>';
    }elseif(!isset(
    $_POST['newuser']) || $_POST['newuser'] == ""){
    echo 
    '<p align="center">Bitte geben sie einen neuen Benutzernamen ein!<br><br><a href="config.php">Zur&uuml;ck</a></p>';
    }elseif(!isset(
    $_POST['password']) || $_POST['password'] == ""){
    echo 
    '<p align="center">Bitte beben sie ihr Passwort ein!<br><br><a href="config.php">Zur&uuml;ck</a></p>';
    }else{
        
        
    $query = @mysql_query("SELECT user FROM users WHERE user = '".$_POST['olduser']."'");
        
    $result = @mysql_fetch_array($query);
        if(
    $_POST['olduser'] == $result['user']) {
                
    $query2 = @mysql_query("SELECT pass FROM users WHERE pass = '".$_POST[md5 ('password')]."'");
                
    $result2 = @mysql_fetch_array($query);
                if(
    $_POST[md5 ('password')] == $result['pass']) {
    # hier müsste jetzt der Code für das Ändern des Benutzernamens rein.
                
    }else{
                    echo 
    '<p align="center">Falsches Passwort! Bitte wiederholen sie ihre Eingabe!<br><br><a href="config.php">Zur&uuml;ck</a></p>';
                }
        }else{
            echo 
    '<p align="center">Sie haben den falschen alten Benutzernamen eingegeben!<br><br><a href="config.php">Zur&uuml;ck</a></p>';
        }
    }
    ?>
    noch eben zur Erklärung: Ich habe in meinem Formular drei Eingabefelder: olduser, newuser und password. In meiner Datenbank gibt es eine Tabelle names users mit den Spalten id, user und pass.

    Über Antworten würde ich mich freuen, bis denn, Tom

  • #2
    http://www.mysql.com/doc/de/UPDATE.html
    Ich denke, also bin ich. - Einige sind trotzdem...

    Kommentar


    • #3
      der befehl ist soweit logisch. wie mache ich das jedoch aus PHP heraus?

      Nochmals danke, Tom

      Kommentar


      • #4
        $query2 = @mysql_query("UPDATE tabelle SET wert='$wer', bla = '$bluvv' WHERE id = '$id'");

        meinst du sowas ???

        Kommentar


        • #5
          Ja genau sowas mein ich. Jetzt noch ne kleine Frage:
          Brauch ist das $query2 = überhaupt noch, oder reicht es nicht einfach

          @mysql_query("UPDATE users SET user = $_POST['newuser'] where user = $_POST['olduser']

          zu schreiben? Das müsste doch auch so funktionieren? Wie siehts von meinem Code her aus, ist das so richtig geschrieben?

          Vielen Dank mal wieder , Tom

          Kommentar


          • #6
            natuerlich reicht da ein query ...
            hat mir deinen quelltext nicht genaugenug angekuckt ...@mysql_query("UPDATE users SET user = $_POST['newuser'] where user = $_POST['olduser']");

            sollte funzen ....
            du ersetzt also im feld user einen eintrag durch einen anderen ....

            greetz
            iglo

            Kommentar


            • #7
              Erstmal mal wieder danke! So ich hab den Code jetzt in meinen eingefügt und bekomme folgende Fehlermeldung:

              Parse error: parse error, unexpected T_VARIABLE in /www/htdocs/tomfresh/admin/config/config.php on line 83

              und das ist line 83:

              PHP-Code:
              @mysql_query("UPDATE users SET user = "$_POST['newuser']" where user = "$_POST['olduser']""); 
              So langsam verlier ich echt die Motivation. Hab schon sooooo viel ausprobiert und nichts hat wirklich geklappt!!

              Bis denn, Tom



              p.s.: wie habt ihr mysql oder php gelernt???

              Kommentar


              • #8
                war fast richtig ... fehlten nur ein paar punkte und kommatas

                @mysql_query("UPDATE users SET user = '".$_POST['newuser']."' where user = '".$_POST['olduser']."'");

                also bei $_POST[newuser]

                davor zuerst ' dann " dann .
                danach zuerst . dann " dann '

                das gleiche bei olduser nur das nach dem ' dann noch nen " kommt

                ich denk so duerft das funzen ...

                greetz
                iglo

                myqsl und php lern ich durch viel uebung ... nen gutes buch ...
                und viel zeit und geduld

                Kommentar


                • #9
                  Juuuhuuuuuu!!!! Endlich klappt es! Meine Zeit ist das als Newbie schwer!! Aber jetzt klappt et! @kapitaeniglo: vielen vielen vielen Dank *g*
                  Bis denn!

                  Kommentar


                  • #10
                    kein problem ... so ziemlich jeder (me too) hat mal klein angefangen ..

                    greetz
                    iglo

                    Kommentar

                    Lädt...
                    X