session-problem bei insert

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

  • session-problem bei insert

    Hallo,

    hier mal wieder ein Problem mit sessions.

    Habe auf einer Seite eine Funktion, die eine Session mit der id eines zuletzt eingefügtenDatensatzes erzeugt.

    PHP-Code:
    function Session(){
        
        
    $_SESSION['id'] = mysql_insert_id();
        
    session_register('id');
        } 
    Diese Session wird an eine andere Seite übergeben. Das funktiniert auch.
    Nun möchte ich aber auf dieser Seite einen Datensatz einfügen und zwar unter der id, die der zuletzt eingefügtenid entspricht. Das funktioniert aber nicht.
    Es handelt sich um eine Registrierung. Es werden zuerst Benutzerdaten eingefügt. Unter dieser id sollen nun Zahlunginformationen eingefügt werden.
    Hier der Code:

    PHP-Code:
    function setAccountData(){

            
            
    $query "INSERT INTO users ( user_accname,
                                          user_accnum,
                                          user_accbank
                                        )                                             
                      VALUES
                                        ('"
    .mysql_escape_string(stripslashes($_POST['accname']))."',
                                         '"
    .mysql_escape_string(stripslashes($_POST['accnum']))."',
                                         '"
    .mysql_escape_string(stripslashes($_POST['accbank']))."'
                                        )
                     WHERE user_id = '"
    .$_SESSION['id']."'";
            
            
    mysql_query($query);
        
        } 

  • #2
    funktioniert nicht heißt?

    hast du dir $query mal ausgeben lassen?

    warum nimmst du das session_register nicht raus?
    Ich denke, also bin ich. - Einige sind trotzdem...

    Kommentar


    • #3
      $_SESSION['id'] = mysql_insert_id();
      session_register('id');
      was´n das? Damit: $_SESSION['id'] = mysql_insert_id(); ist die id doch schon in der Session ... Also warum nochmal session_register()???
      h.a.n.d.
      Schmalle

      http://impressed.by
      http://blog.schmalenberger.it



      Wichtige Anmerkung: Ich habe keine Probleme mit Alkohol ...
      ... nur ohne :-)

      Kommentar


      • #4
        du bist ja so doof...

        natürlich um die id wieder rauszuschmeißen
        Ich denke, also bin ich. - Einige sind trotzdem...

        Kommentar


        • #5
          Achso
          h.a.n.d.
          Schmalle

          http://impressed.by
          http://blog.schmalenberger.it



          Wichtige Anmerkung: Ich habe keine Probleme mit Alkohol ...
          ... nur ohne :-)

          Kommentar


          • #6
            Erhalte folgende Fehlermeldung:

            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 user_id = '23'' at line 10.


            Finde aber keinen Fehler!!

            Kommentar


            • #7
              Original geschrieben von bmaas
              Finde aber keinen Fehler!!
              füge einen neuen datensatz
              in die tabelle ein
              wo/in dem die spalte user_id einen bestimmten wert hat


              wenn du die datenbank wärst, wüsstest du, was ich von dir will?
              Ich denke, also bin ich. - Einige sind trotzdem...

              Kommentar


              • #8
                sorry, aber das verstehe ich nicht.

                Kommentar


                • #9
                  Original geschrieben von bmaas
                  sorry, aber das verstehe ich nicht.
                  siehste, die datenbank auch nicht

                  schau dir doch nochmal die Syntax von INSERT an
                  Ich denke, also bin ich. - Einige sind trotzdem...

                  Kommentar


                  • #10
                    O.K., so weit so gut.

                    Habe es jetzt geändert in:
                    PHP-Code:
                    $query "INSERT INTO users 
                        SET user_accname = '"
                    .mysql_escape_string(stripslashes($_POST['accname']))."',
                        user_accnum =   '"
                    .mysql_escape_string(stripslashes($_POST['accname']))."',
                        user_accbank =  '"
                    .mysql_escape_string(stripslashes($_POST['accbank']))."'
                                                                                WHERE user_id = '"
                    .$_SESSION['id']."'";
                            
                        
                    mysql_query($query)or die(mysql_error());
                        
                        } 
                    Erhalte folgende Fehlermeldung:
                    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 user_id = '26'' at line 7

                    Kommentar


                    • #11
                      muss ich mich jetzt vera****t fühlen?

                      wenn du den link von mir nicht gelesen haben solltets, dann hol da sschleunigst nach

                      wenn du ihn gelesen hast und immer noch der meinung bist, dass dein INSERT stimmt, dann beschwer dich bei deinem hoster und sag ihm sein mysql wäre kaputt, danach solltest du schauen, dass du lang gewinnst

                      tipp: such auf der seite, zu der dich der link bringt, mal nach dem ersten wort, dass bemängelt wird...
                      Ich denke, also bin ich. - Einige sind trotzdem...

                      Kommentar


                      • #12
                        Original geschrieben von bmaas
                        O.K., so weit so gut.
                        nee, so weit, so schlecht - du hast es ja immer noch nicht begriffen.

                        Habe es jetzt geändert in: [...]

                        Erhalte folgende Fehlermeldung:
                        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 user_id = '26'' at line 7
                        du willst einen neuen datensatz einfügen - also ist es absolut sinnfrei, sich auf eine schon bestehende ID beziehen zu wollen!

                        entweder:
                        INSERT ohne WHERE, um einen neuen DS einzufügen, oder
                        UPDATE mit WHERE, um einen/mehrere bestehende DS zu ändern


                        jetzt geschnallt? hoffentlich.
                        I don't believe in rebirth. Actually, I never did in my whole lives.

                        Kommentar


                        • #13
                          meinst du er kann den post von dir besser lesen als die entsprechende seite im manual?

                          möglich ist ja vieles...
                          Ich denke, also bin ich. - Einige sind trotzdem...

                          Kommentar


                          • #14
                            Original geschrieben von mrhappiness
                            meinst du er kann den post von dir besser lesen als die entsprechende seite im manual?

                            möglich ist ja vieles...
                            *rofl*
                            h.a.n.d.
                            Schmalle

                            http://impressed.by
                            http://blog.schmalenberger.it



                            Wichtige Anmerkung: Ich habe keine Probleme mit Alkohol ...
                            ... nur ohne :-)

                            Kommentar


                            • #15
                              Sorry, stand gerade total auf dem Schlauch.
                              Super doof!

                              Danke für die Hilfe und Geduld!

                              Es klappt jetzt.

                              Kommentar

                              Lädt...
                              X