我将数据存储在我的数据库中。现在我想取回它。但是数据的开头都是0。当我获取数据时,0被删除。
例如,我存储了"0064",当我获取它时,显示"64"。
$sql1="select * from book where id='$code'";
$result=mysqli_query($con,$sql1);
if(!mysqli_query($con,$sql1))
{
die('error' .mysqli_error($con));
}
$row = mysqli_fetch_array( $result ,MYSQLI_ASSOC);
当我想在文本框中获取时,我使用以下代码:
<input type="text" size="15" value="<? echo $row['id'] ?>">
我怎样才能保留这些零呢?由于
从数据库中获取id后添加这些0
str_pad($input, 4, $row['id'], STR_PAD_LEFT);
或者可以用
重新定义表结构id INT(4) ZEROFILL
具有相同的效果。
关键是存储一个数字,而显示任何你想要的花哨格式。
您需要更改您的模式结构。您需要将字段定义为CHAR
或VARCHAR
,而不是INT
,以便可以保存以零作为前缀的数据。整数字段不允许这样做(如在Excel工作表中)。
获取数据前,需要将ID字段转换为varchar
。查询将是下面的查询。
$sql1 = "select * from book where id LIKE '$code'";
$result = mysqli_query($con,$sql1);
if (!mysqli_query($con,$sql1)) {
die('error' .mysqli_error($con));
}
$row = mysqli_fetch_array($result, MYSQLI_ASSOC);