Ankündigung

Einklappen
Keine Ankündigung bisher.

Mysql update problem

Einklappen

Neue Werbung 2019

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

  • Mysql update problem

    Hi!

    Ich will ein paar Daten in meiner Datenbank updaten, doch mit dem folgenden Skript gibts probleme:

    PHP-Code:
    <?php
    $link 
    mysql_connect(abc,asdl,ashid);
    mysql_select_db(flflfl_01$link);
    $aendern "Update 'buch $i' set titel='$titel', inhalt='$inhalt', laenge='$laenge' WHERE buchid = '$buchid', autor= '$autor' ";
    mysql_query($aendern) or die (mysql_error()); 


    ?>
    was ist falsch? Ich gaube, es liegt daran, dass ich 2 Where bedingungen habe, die aber immer nur auf ein Feld zutreffen.

    lg flo


  • #2
    Was gibt er die denn für ne fehlermeldung aus?
    "Nur wer erwachsen wird und ein Kind bleibt, ist ein Mensch."
    (Erich Kästner, dt. Schriftsteller, 1899-1974)

    Kommentar


    • #3
      WHERE erwartet BOOL-Werte, d.h. ja oder nein. Du trennst deine Abfrage mit ,. Da muss ein AND oder OR oder ähnliches hinein (ich würd mal sagen AND).

      Außerdem sieht dein Tabellenname sinnlos und syntaktisch falsch aus. Bin kein MySQL-Experte, aber ich dachte es sind keine Leerzeichen im Namen erlaubt (abgesehen davon ist das zu verwendende Hochkommata dann `).

      Dass du pro Buch eine Tabelle anlegst macht ebenfalls keinen Sinn.

      Kommentar


      • #4
        PHP-Code:
        <?php
        $query 
        "UPDATE table SET title='".addslashes($title)."', inhalt='".addslashes($inhalt)."' WHERE id=".$id." AND autor='".addslashes($autor)."'";
        ?>
        in der WHERE Klaussel ein 'AND' stadt einem ','...

        Ansonsten:
        - addslashes() ist dazu da, damit jegliche Sonder und steuerzeichen mit in der DB verwendet werden können. Also kein Problem, wenn der Autor °Marion d' McKati° heist

        - Wenn der Tabellenname ein Lehrzeichen beinhaltet (Was man vermeiden sollte[gibt später komplikationan]) dann braucht man Backstiks '`' (meißt oben rechts auf der Tastatur)

        - Der Sinn einer ID (zB buch_id) ist, einen eindeutigen Schlüssel zu haben. Also reicht eigendlich das abprüfen auf die ID, das mit dem Autor dürfte überflüssig sein.
        Die ID einer Tabelle ist so eindeutig wie die ISBN für ein Buch
        Wenn dich was ankotzt, machs besser.

        Kommentar


        • #5
          Dem ist nichts hinzuzufügen

          Kommentar


          • #6
            Wenn ich einen Datensatz updaten will, MUSS ich da alle Felder update?

            Kommentar


            • #7
              Nein! Wieso hängst du deine Frage eigentlich an diesen Thread?

              Gruß
              phpfan

              Kommentar


              • #8
                Damit ich mit meiner eher etwas simplen Frage nicht nen neues Thema aufmachen muss. Und es passte eben, meiner Meinung nach.

                Kommentar


                • #9
                  Probiers doch einfach aus?!

                  Kommentar

                  Lädt...
                  X