Ändern eines Datensatzes

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

  • #31
    JJJJJJJJJAAAAAAAAAAAAA

    He man ihr seit die größten, danke für eure mühe bei solch einem tollen wetter, geb ein bier aus.

    Nochmal Danke bei allen die mir geholfen haben

    MFG Andreas

    Kommentar


    • #32
      wurde aber auch zeit
      bei fragen immer
      windows - pc: Start -> Ausführen -> cmd (command) - format c:
      linux : lass es , es hat sicher einen sinn so
      --
      php-forum.at


      >>>>dont ask me why<<<<

      Kommentar


      • #33
        Hallo zusammen,

        da ich mich in letzter Zeit auch mit genau dem hier beschriebenen Problem rumgeschlagen hab war ich froh hier eine Lösung gefunden zu haben.

        Dachte ich auf jeden fall.

        Die Auswahl des Datensatzes funktioniert jetzt Prima, doch leider wird der Datensatz nicht geändert.

        <!doctype html public "-//W3C//DTD HTML 4.0 //EN">
        <html>
        <head>
        <title>Title here!</title>
        </head>
        <body>

        <?php

        //$db = mysql_connect();
        //Verbindung zur Datenbank
        include("../../verbindung/zugriff.inc.php");

        $sqlab = "update personen set name = '$neunn',";
        $sqlab .= "vorname = '$neuvn',";
        $sqlab .= "personalnummer = '$neupn',";
        $sqlab .= "gehalt = '$neuge',";
        $sqlab .= "geburtstag = '$neugt'";
        $sqlab .= "where personalnummer = $oripn";

        mysql_query($sqlab);

        $num = mysql_affected_rows();
        if ($num>0)
        echo "Der Datensatz wurde geändert<p>";
        else
        echo "Der Datensatz wurde nicht geändert<p>";

        mysql_close($db);
        ?>

        Zurück zur <a href="uf16a.php">Auswahl</a>

        </body>
        </html>

        So schau bei mir das letzte Script aus.

        Und als Meldung sagt er :

        Der Datensatz wurde nicht geändert
        Zurück zur Auswahl

        Hier ist noch die Includedatei:

        <?php
        //Zugangsdaten
        $user="root"; //Benutzername für den MySQL-Zugang
        $password="?????"; //Passwort
        $host="localhost"; //Name (IP-Adr.) des Rechners mit MySQL
        $dbname="firma";//Name der Datenbank

        //Verbindung aufbauen
        $db = mysql_connect($host, $user, $password) or die("Verbindung fehlgeschlagen");
        //Datenbank als Standard definieren
        mysql_select_db($dbname,$db);
        ?>

        Vieleicht hat ja jemand eine Idee......

        Henning

        Kommentar


        • #34
          mache mal "echo $sqlab" und führe es in PMA aus
          [Test] MySQL cli Emulator

          Kommentar


          • #35
            Original geschrieben von HenningRitter

            Und als Meldung sagt er :

            Der Datensatz wurde nicht geändert
            Zurück zur Auswahl
            hast du denn auch überprüft, ob das auch tatsächlich der Fall ist, oder verlässt du dich auf die obige Aussage? Ich frage, weil:
            aus Manual

            Note: When using UPDATE, MySQL will not update columns where the new value is the same as the old value. This creates the possibility that mysql_affected_rows() may not actually equal the number of rows matched, only the number of rows that were literally affected by the query.

            Kommentar


            • #36
              Danke für die schnelle Antwort

              Aber mit " PMA " kann ich nix anfangen. *schäm*

              Henning

              Kommentar


              • #37
                http://www.phpmyadmin.net/
                [Test] MySQL cli Emulator

                Kommentar


                • #38
                  @asp2php

                  Jo, sicher hab ich es überprüft

                  Und das Manual lese ich bestimmt auch bevor ich Frage.

                  Das Problem wird in den verschiedenen PHP und MySql Versionen liegen.
                  Die Literatur die ich hier hab ist teilweise noch auf MySql 3.xx.x zugeschnitten.

                  Henning

                  Kommentar


                  • #39
                    @NielsRunge

                    sorry, aber die abkürzung war mir nicht geläufig.


                    #1064 - You have an error in your SQL syntax.

                    Sagt er mir

                    Henning

                    Kommentar


                    • #40
                      ja, "echo $sqlab" hast Du ja nicht gemacht, oder zumindest das Ergebnis hier nicht gepostet...

                      Wie soll man so sonst sagen wo der Fehler ist?
                      [Test] MySQL cli Emulator

                      Kommentar


                      • #41
                        Ich hab es mal in das Script eingebaut.

                        update personen set name = '',vorname = '',personalnummer = '',gehalt = '',geburtstag = ''where personalnummer = Der Datensatz wurde nicht geändert

                        hat er jetzt ausgeworfen

                        Kommentar


                        • #42
                          und? fällt dir nichts auf?

                          Kommentar


                          • #43
                            Ich bin mir nicht sicher, aber eigendlich erscheinen gar keine Änderungen in der Ausgabe.

                            Kommentar


                            • #44
                              So, die Birne ist für heute dicht.

                              Mein Script schaut nun so aus:

                              <!doctype html public "-//W3C//DTD HTML 4.0 //EN">
                              <html>
                              <head>
                              <title>Aenderung ausführen!</title>
                              </head>
                              <body>

                              <?php

                              //$db = mysql_connect();
                              //Verbindung zur Datenbank
                              include("../../verbindung/zugriff.inc.php");

                              $sqlab = "update personen set name = '$neunn',";
                              $sqlab .= "vorname = '$neuvn',";
                              $sqlab .= "personalnummer = '$neupn',";
                              $sqlab .= "gehalt = '$neuge',";
                              $sqlab .= "geburtstag = '$neugt'";
                              $sqlab .= "where personalnummer = $oripn";
                              echo $sqlab;

                              mysql_query($sqlab) or die (mysql_error());

                              $num = mysql_affected_rows();
                              if ($num>0)
                              echo "Der Datensatz wurde geändert<p>";
                              else
                              echo "Der Datensatz wurde nicht geändert<p>";

                              mysql_close($db);
                              ?>

                              Zurück zur <a href="uf16a.php">Auswahl</a>

                              </body>
                              </html>

                              Und der dazugehörige Fehler

                              update personen set name = '',vorname = '',personalnummer = '',gehalt = '',geburtstag = ''where personalnummer = You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1

                              Vieleicht kann mir ja jemand weiterhelfen.

                              Henning

                              Kommentar


                              • #45
                                Original geschrieben von HenningRitter
                                Vieleicht kann mir ja jemand weiterhelfen.
                                dass in der query etwas wichtiges fehlt, wurde dir ja schon mitgeteilt.

                                ist dir inzwischen auch aufgefallen, was das ist?

                                gut, dann kannst du dich ja jetzt an die behebung dieses problems machen. register_globals ist dein suchstichwort, falls du nicht alleine darauf kommst. (btw: das ist auch das problem, mit dem dieser thread ursprünglich mal gestartet ist ...)
                                I don't believe in rebirth. Actually, I never did in my whole lives.

                                Kommentar

                                Lädt...
                                X