Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] Daten in Mysql tabelle ändern

Einklappen

Neue Werbung 2019

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

  • [Erledigt] Daten in Mysql tabelle ändern

    Hallöchen
    PHP-Code:
    <?php
        session_start
    ();

                    
    $db mysqli_connect("localhost""ni96450_2sql1""dasfdsaffasdfsdaf!""ni96450_2sql1");
                    
    $sessionbenutzer $_SESSION['login'];
                    
    $userid $_SESSION['id'];
                    
                    
    $pwneu1 $HTTP_POST_VARS["password1"];
                    
    $pwneu2 $HTTP_POST_VARS["password2"];
                    
                    if(
    $pwneu1 == $pwneu2)
                        {
                        
                        
    $aendern "UPDATE userdaten Set passwort = '$pwneu1' WHERE id = '$userid' ";
                        
    $update mysqli_query($db$aendern);
                        echo
    'Erfolgreich ausgef&uuml;hrt';
                        
                        }
                    else{echo
    'Die Passw&ouml;rter stimmen nicht &uuml;berein!';}
     
    ?>

    Bei diesem Code wird mir zwar der gewünschte echo "Erfolgreich ausgef&uuml;hrt" ausgegeben jedoch wird in der tabelle nichts geändert woran kann das liegen ?

  • #2
    woran kann das liegen ?
    - es gibt keinen Satz der zuftrifft
    - es gab Fehler

    Beides kann man prüfen, was du nicht tust.
    http://php.net/manual/de/mysqli.affected-rows.php
    http://php.net/manual/de/mysqli.error.php

    Und nutze $_POST statt $HTTP_POST_VARS, das ist ja schon ewig veraltet.

    Kommentar


    • #3
      So zeigst Du eventuelle Fehler an.
      PHP-Code:
      if($update){
      echo 
      "Erfolg!";
      }
      else{
      echo 
      "Fehler!";
      echo 
      mysqli_error($db);

      Kommentar


      • #4
        $HTTP_POST_VARS?!?!? Das ist ja total veraltet, schreibe $_POST

        Kommentar


        • #5
          Zitat von <Hotte> Beitrag anzeigen
          So zeigst Du eventuelle Fehler an.
          PHP-Code:
          if($update){
          echo 
          "Erfolg!";
          }
          else{
          echo 
          "Fehler!";
          echo 
          mysqli_error($db);

          Gibt erfolg aus. In der Tabelle wird dennoch das alte Passwort angezeigt.

          Kommentar


          • #6
            Und, schon mal versucht die query ($aendern) mit echo ausgeben zu lassen und schauen was du da wirklich an die DB schickst?

            Nur weil kein Fehler kommt, kann ja auch sein das ein Wert leer ist etc und daher nur kein treffender Satz (WHERE ... ) gefunden wurde - siehe #2.

            Mach mal ein echo $aendern und schau ob das Sinn macht.

            Kommentar


            • #7
              Hab jetzt
              PHP-Code:
              <?php
                  session_start
              ();

                              
              $db mysqli_connect("localhost""ni96450_2sql1""asdfdsfadsfdsafdsaf""ni96450_2sql1");
                              
              $userid $_SESSION['id'];
                              
                              
              $pwneu1 $_POST['password1'];
                              
              $pwneu2 $_POST['password2'];
                              
                              if(
              $pwneu1 == $pwneu2)
                                  {
                                  
                                  
              $aendern "UPDATE userdaten Set passwort = '$pwneu1' WHERE id = '$userid' ";
                                  
              $update mysqli_query($db$aendern);
                                  echo
              '$aendern';
                                  
                                  }
                              else{echo
              'Die Passw&ouml;rter stimmen nicht &uuml;berein!';}
                              
                              
               
              ?>
              geschrieben

              ausgegeben wird:
              Code:
              $aendern

              Kommentar


              • #8
                PHP-Code:
                echo '$aendern'
                Na komm, jetzt aber, einfache Hochkommas ... tztz

                PHP-Code:
                echo $aendern

                Kommentar


                • #9
                  Zitat von hausl Beitrag anzeigen
                  Na komm, jetzt aber, einfache Hochkommas ... tztz

                  PHP-Code:
                  echo $aendern
                  Ja sry arbeite noch lange nicht mit php ...

                  Kommentar


                  • #10
                    UPDATE userdaten Set passwort = 'hallo' WHERE id = ''

                    Kommt jetzt

                    Kommentar


                    • #11
                      also ist $userid leer ?

                      Kommentar


                      • #12
                        Siehste, sag ich doch, geneu so ist es, es passt einfach kein Kriterium, daher auch keine Änderung.

                        Und jetzt finde heraus, warum $userid leer ist.

                        Also, prüfe das:

                        PHP-Code:
                         $userid $_SESSION['id']; 
                        Was ist in deiner Session? Scheinbar nicht das was du denkst .. zumindest gibt es id nicht.

                        Mach mal ein var_dump($_SESSION);

                        Aktiviere zB mal error_reporting... wenn es den Key id in der Session nicht gibt würdes du von PHP eine Notice bekommen etc.. Das ganz zu Beginn des Scriptes:

                        PHP-Code:
                        error_reporting(-1);
                        ini_set('display_errors'1); 
                        LG

                        Kommentar


                        • #13
                          Jap der Fehler lag darin... ich übermittle jetzt einfach die ID über das Formular

                          Kommentar


                          • #14
                            Zitat von Jonas141999 Beitrag anzeigen
                            Jap der Fehler lag darin... ich übermittle jetzt einfach die ID über das Formular
                            Und damit kann jeder jedes Passwort ändern, herzlichen Glückwunsch.

                            Kommentar


                            • #15
                              Zitat von tk1234 Beitrag anzeigen
                              Und damit kann jeder jedes Passwort ändern, herzlichen Glückwunsch.
                              Wie das denn bitte ?

                              Kommentar

                              Lädt...
                              X