Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
menu search
person
Welcome To Ask or Share your Answers For Others

Categories

The error message I got:

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 ''word','group','selfnote') VALUES ('item','a','note to self')' at line 1

The PHP code is:

$toq="INSERT INTO articles ('word','group','selfnote') 
VALUES ('$ttle','$wrdr','$snote')";

I was trying to find solutins, but they didn't seem to work as echoing gives:

INSERT INTO articles ('word','group','selfnote') 
VALUES ('item','a','note to self')

which seems nice to me. What is the problem?

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
487 views
Welcome To Ask or Share your Answers For Others

1 Answer

You've put quotes on your field names. That forces MySQL to treat them as strings, not field names - and you can't insert into strings.

INSERT INTO articles (word, group, selfnote) VALUES (....);

is the correct syntax. The only quoting type allowed on field names is the use of backticks to escape reserved word fields, e.g.

INSERT INTO articles (table, int, varchar)  ...

would fail due to the use of 3 reserved words, but adding backticks

INSERT INTO articles (`table`, `int`, `varchar`)  ...

makes them acceptable as fieldnames.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
...