sql UPDATE funktioniert nicht

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • 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.

    Comment


    • #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.

      Comment


      • #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

        Comment


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

          Comment


          • #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!

            Comment


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

              Comment


              • #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

                Comment


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

                  Gruß
                  Uwe

                  <edit> Zu langsam </edit>

                  Comment

                  Working...
                  X