Announcement

Collapse
No announcement yet.

Bei eintragen in eine MySQL tabelle kommt ein Fehler!

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

  • Bei eintragen in eine MySQL tabelle kommt ein Fehler!

    hallo,

    was hab ich falsch gemacht? ich kann den fehler nicht mehr erkennen ich weis nur das er in zeile 10 ist.
    die hab ich hier unten hin kopiert


    Code:
    $sql_eintrag = "INSERT INTO e-mail (e-mail); VALUES $_POST['e-mail']";
    und dann kommt dieser fehler:

    Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /home/www/cwcity/hosting/w/e/web-planer/htdocs/signup.php on line 10

    bitte um schnelle hilfe

    mfg

  • #2
    schon mal so versucht

    $sql_eintrag = "INSERT INTO e-mail (e-mail) VALUES $_POST['e-mail']";
    Christian

    Comment


    • #3
      jop da kommt der gleiche fehler

      Comment


      • #4
        Hi,

        der Wert muss in Klammer und in Anführungszeichen:
        PHP Code:
        $sql_eintrag 'INSERT INTO e-mail (e-mail) VALUES ("'.$_POST['e-mail'].'");' 
        "(...) deshalb mag ich Binärtechnik. Da gibt es nur drei Zustände: High, Low und Kaputt." (Wau Holland)

        Viele Grüße Novi

        Comment


        • #5
          Und wenn man nicht sein Programm permament bezüglich SQL-Injection ausgesetzt haben will sollte man auch parametrisierte Abfragen verwenden.

          Comment


          • #6
            Hallo,
            Originally posted by Antron View Post
            ...Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /home/www/cwcity/hosting/w/e/web-planer/htdocs/signup.php on line 10
            Das ist keine Fehlermeldung bezgl. des fehlerhaften SQL-Strings, sondern ein Parse-Error von PHP. Dessen Ursache liegt aber höchstwahrscheinlich schon in der Zeile davor. Deshalb ist es immer günstig nicht nur DIE Zeile aus der Meldung zu posten, sondern immer auch ein paar davor und ein paar danach.

            Originally posted by Antron View Post
            ...bitte um schnelle hilfe
            Um schnelle Hilfe darfst du gerne den kostenpflichtigen Support bitten, der dir dafür einen entsprechenden Aufschlag berechnet. Hier ist so eine Bemerkung eher unangebracht.

            Gruß Falk
            Wenn du denkst du hast alle Bugs gefunden, dann ist das ein Bug in deiner Denksoftware.

            Quellcode ohne ein Mindestmaß an Formatierung sehe ich mir nicht an! Ich leiste keinen Privatsupport per Mail oder PN!

            Comment


            • #7
              Originally posted by Novi View Post
              ...der Wert muss in Klammer und in Anführungszeichen:
              PHP Code:
              $sql_eintrag 'INSERT INTO e-mail (e-mail) VALUES ("'.$_POST['e-mail'].'");' 
              String-Literale werden in SQL durch einfache Hochkomma und nicht durch Doppelte gekennzeichnet. Und in Bezug auf die bereits angesprochene SQL-Injection sollte das das mindeste sein:
              PHP Code:
              $sql_eintrag 'INSERT INTO e-mail (e-mail) VALUES (\''.mysql_real_escape_string($_POST['e-mail']).'\')'
              Gruß Falk
              Wenn du denkst du hast alle Bugs gefunden, dann ist das ein Bug in deiner Denksoftware.

              Quellcode ohne ein Mindestmaß an Formatierung sehe ich mir nicht an! Ich leiste keinen Privatsupport per Mail oder PN!

              Comment


              • #8
                Originally posted by Falk Prüfer View Post
                String-Literale werden in SQL durch einfache Hochkomma und nicht durch Doppelte gekennzeichnet.
                Hi Falk Prüfer,

                da hast du natürlich recht! Ich verwechsle das bei SQL gerne mit anderen Sprachen, da ich Zeichenketten in SQL-Abfragen eigentlich so gut wie nie direkt verwende. Dies entfällt ja, wenn man mit Prepared Statements arbeitet, da dort ja nur noch Platzhalter stehen.
                "(...) deshalb mag ich Binärtechnik. Da gibt es nur drei Zustände: High, Low und Kaputt." (Wau Holland)

                Viele Grüße Novi

                Comment

                Working...
                X