phpMyAdmin-won';不允许数字转换成十进制?
所以我的代码是:phpMyAdmin-won';不允许数字转换成十进制?,php,mysql,sql,Php,Mysql,Sql,所以我的代码是: $productname = $_GET['productname']; $productprice = $_GET['productprice']; $productimage = $_GET['productimage']; $productcat = $_GET['cat']; $query = "INSERT INTO $tbl_name ('name, img, price, category') VALUES ('$productname, $producti
$productname = $_GET['productname'];
$productprice = $_GET['productprice'];
$productimage = $_GET['productimage'];
$productcat = $_GET['cat'];
$query = "INSERT INTO $tbl_name ('name, img, price, category') VALUES ('$productname, $productimage, $productprice, $cat')";
mysql_query($query);
$productprice=1.99,phpMyAdmin上的类型设置为十进制(2,2)。当查询运行时,它不会被放入数据库中。我厌倦了在返回的db上运行SQL
SQL查询:
INSERT INTO products( name, img, price, category )
VALUES (
black pens, 007.jpg, **1.99**, stationary
)
MySQL说:文档
1064-您的SQL语法有错误;检查与您的MySQL服务器版本对应的手册,以了解在第1行“pens,007.jpg,19,Stational”附近使用的正确语法。问题在于它前面的字符串数据。应引用:
INSERT INTO products( name, img, price, category )
VALUES (
'black pens', '007.jpg', 1.99, 'stationary'
)
从查询中删除单引号
$query = "INSERT INTO $tbl_name (name, img, price, category) VALUES ($productname, $productimage, $productprice, $cat)";
这不起作用,我不得不在所有变量周围加上单引号,除了价格,谢谢!真是太棒了!只需将引号合并到我的php代码中的变量,谢谢!不客气。:)还有一个建议:现在可以使用
mysql
函数。如果切换到mysqli
或PDO
,则可以使用参数。一旦掌握了窍门,就可以让这样的查询更安全、更容易。例如,您可以插入带有引号的值,而无需中断查询。请参阅:phpMyAdmin不是数据库,也不是Microsoft SQL Server错误消息。正如@GolezTrol在回答中所说,您需要在非数字数据周围加引号。而且,你对你的工作非常开放。请mysql.*
函数已经过时,而且不安全。使用或替代,并使用准备好的声明来解决注射风险。