-1

我将数据存储在我的数据库中。现在我想获取它。但是数据的开头有零。当我获取数据时,零被删除了。

例如,我存储了“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'] ?>">

我怎样才能保留这些零?谢谢

4

3 回答 3

2

从数据库中获取 id 后添加这些零

str_pad($input, 4, $row['id'], STR_PAD_LEFT);

或者你可以重新定义你的表结构

id INT(4) ZEROFILL

具有相同的效果。

要点是存储一个数字,但显示你想要的任何花哨的格式。

于 2013-06-19T07:44:40.633 回答
-1

您需要更改架构结构。而不是INT,您需要将您的字段定义为CHARor VARCHAR,以便您可以使用零作为前缀保存数据。整数字段不允许这样做(如在 Excel 工作表中)。

于 2013-06-19T07:45:58.233 回答
-2

在获取数据之前,将 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);
于 2013-06-19T07:44:32.767 回答