繁体   English   中英

插入mysql(php)时删除了数字

[英]Removed digits while inserting into mysql (php)

嗨,我在mysql表中插入数据(仅3个字段)。

问题是,当在tinyint中插入一个数字(3位数字)(也尝试使用TEXT,VARCHAR和其他字段类型)时,结果是仅添加了第一位数字。

插入其他字段(同样是数字)也没有问题。

我正在使用一个调用以下简单代码的函数:

$idT= $_POST["idT"];

function related( $idE, $idT, $Type  )
{
$sql = "INSERT INTO table_name ( idE, idT, Type ) VALUES ( '$idE', '$idT', '$Type ')";
$result = mysql_query($sql, $conn);

return mysql_insert_id($conn);
}

问题在于$idT变量。

问题可能是您尝试插入的值超出了MySql数值类型 [TINYINT]的存储容量(范围从-127到127的有符号或0到255的有符号)。

您可能需要更改表结构,以使作为TINYINT的列改为INT(#)

我认为您仅更改了“ 数据类型 ”字段(无论是“ VARCHAR ”,“ INT ”还是“ TINYINT ”)。 您还需要将字段“ 长度/值 ”更改为“ 3 ”(“ TINYINT UNSIGNED ”)或“ 4 ”(“ TINYINT SIGNED ”)或“ 4 ”(“ INT SIGNED ”)。

希望能帮助到你。


跟踪PHP中任何代码的最简单方法是在每个赋值语句之后和每个函数之后,通过回显所需的/感兴趣的变量(如果是字符串/整数)或对所有其他变量使用“ var_dump / print_r ”打电话。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM