Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
MySql在插入PHP字符串时执行数学计算_Php_Mysql - Fatal编程技术网

MySql在插入PHP字符串时执行数学计算

MySql在插入PHP字符串时执行数学计算,php,mysql,Php,Mysql,我有一个phpINSERT用于mysql数据库,我有一个类似日期的字符串,它“添加”值,而不是仅仅将其插入mysql表中。当我只是回显我得到的值时,'2012-03'是一个过期日期,必须以这种方式格式化。但在数据库中,它显示的是“2009”,所以它会计算出来。我做错了什么 这是插页。。。 此外,expdate的MySQL值为varchar(7),您可能需要将MySQL类型设置为type“date”尝试在日期字符串周围加引号。看起来您正在将值作为整数插入,因此mysql认为它是一个数学表达式,

我有一个php
INSERT
用于mysql数据库,我有一个类似日期的字符串,它“添加”值,而不是仅仅将其插入mysql表中。当我只是回显我得到的值时,
'2012-03'
是一个过期日期,必须以这种方式格式化。但在数据库中,它显示的是“2009”,所以它会计算出来。我做错了什么

这是插页。。。


此外,expdate的MySQL值为varchar(7),您可能需要将MySQL类型设置为type“date”

尝试在日期字符串周围加引号。看起来您正在将值作为整数插入,因此mysql认为它是一个数学表达式,而不是字符串
'2012-03'

INSERT INTO payment_profile_id (Last4CCN, CCNExpDate)
     VALUES ($Last4CCN, '$expiration')

你能分享更多你的SQL查询吗?我们能看看insert语句吗?请提供你的相关代码和表结构
CCNExpDate
列的类型是什么?它被设置为“varchar(7)”哇,我不确定我怎么会错过那一个。谢谢@什么是sql注入?如果您阅读了他发布的代码,查询上方的一行会显示
$last4CCN=mysql\u real\u escape\u string($last4CCN)
$expiration=mysql\u real\u escape\u string($expiration)
@JonathanKuhn如果我将$Last4CCN设置为
0,0),该怎么办;DROP TABLE payment_profile_id?我知道现代版本的mysql\u query将不允许它运行,但一些旧版本(或者可能有缺陷)会允许它运行。
INSERT INTO payment_profile_id (Last4CCN, CCNExpDate)
     VALUES ($Last4CCN, '$expiration')