sql UPDATE funktioniert nicht

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

  • sql UPDATE funktioniert nicht

    Ich möchte folgendes Update durchführen:

    PHP-Code:
    $sql="update $tb_name set ID_KUNDE=$ID_Kunde, ID_Lieferant=$ID_Lieferant,
                Teile_NR=
    $_POST[Teile_NR], Walzdraht_DM=$_POST[Walzdraht], Abmessung=$_POST[Abmessung],
                FK=
    $ID_FK, Menge=$_POST[Menge], ZM=$_POST[ZM], Ziehgeschwindigkeit=$_POST[Ziehen],
                Datum_Anfang_Ziehen=
    $ZM_Anfang, Datum_Ende_Ziehen=$ZM_Ende, ITW=$_POST[ITW]
                Vorschub=
    $_POST[Vorschub], Datum_Anfang_ITW=$ITW_Anfang
                Datum_Ende_ITW=
    $ITW_Ende,Abzug=$_POST[Abzug], PE_NR=$_POST[PE_NR],
                Hinweis=
    $_POST[Hinweis]
                      
                where FA_NR = 
    $_POST[FA_NR]";
          echo 
    $sql;   
         
    $result mysql_query ($sql$link) or die ("MySQL-Fehler: " mysql_error());
          


          
    mysql_close($link); 
    jedoch wird mir folgender Fehler angezeigt:

    update fertigungsauftrag set ID_KUNDE=1, ID_Lieferant=1, Teile_NR=12, Walzdraht_DM=12, Abmessung=12, FK=1, Menge=12, ZM=12, Ziehgeschwindigkeit=12, Datum_Anfang_Ziehen=12-12-12, Datum_Ende_Ziehen=12-12-12, ITW=12, Vorschub=12, Datum_Anfang_ITW=12-12-12, Datum_Ende_ITW=12-12-12,Abzug=12, PE_NR=12, Hinweis= where FA_NR = 122121
    MySQL-Fehler: 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 'where FA_NR = 122121' at line 9

  • #2
    Re: sql UPDATE funktioniert nicht

    Original geschrieben von kraut29
    [...] PE_NR=12, Hinweis= where FA_NR = 122121
    Und vor dem where (die Meldung hat dich explizit darauf hingewiesen, dass der Fehler an dieser Stelle liegt!) fällt dir nichts auf ...?
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      Ja für Hinweis fehlt ein Wert, aber wie macht man das, wenn mal ein Formular mit der SELECT Anweisung gefüllt wird und nun z.B. den Inhalt des Hinweisfeldes löscht, dass dann auch in der Datenbank der Wert gelöscht wird.

      Kommentar


      • #4
        mit '' zum BEispiel oder NULL
        Beantworte nie Threads mit mehr als 15 followups...
        Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

        Kommentar


        • #5
          PHP-Code:
          Hinweis=$_POST[Hinweis
          aber der Wert kommt doch aus einer Variable

          Kommentar


          • #6
            Du solltest deine SQL Strings mal formatieren, da hätte jeder Hacker dran spaß!

            PHP-Code:
            $sql "SELECT * FROM `tabelle` WHERE `feldname` = '".$_POST['feldname']."' AND `feldname2` = '".$_POST['feldname2']."'"
            Das selbe natürlich auch bei Update und Insert und was es sosnt noch gibt..

            Wobei man * auch nicht verwenden sollte / muss!

            Kommentar


            • #7
              danke für den tip. es funzt

              Kommentar


              • #8
                Ach bevor ich von Hacker und spaß hier schreib und wer rummeckert, schau dir mal mysql_escape_string bzw mysql_real_escape_string an

                MfG

                Kommentar


                • #9
                  Ein mysql_real_escape_string wäre auch nicht die schlechteste Idee.

                  Gruß
                  Uwe

                  <edit> Zu langsam </edit>

                  Kommentar

                  Lädt...
                  X