在MySQL中保持零领先

问题描述

我有一个带有varchar列的表。我使用值为01、02、03、04 .... 10、11、12等的选择形式将数据存储在此列中。我的问题是,当我提交表单时,开头的“零”将被删除。如何保持前导零?

**

NB。我已经检查了其他类似的职位,但他们没有 解决我的问题。我已经尝试了var / char / text但仍然不是 因此,为什么还有其他方法可以解决这个问题,为什么我会发布这个问题。

**

<form method=post enctype="multipart/form-data">
<select name="dd">
    <option selected="selected">Day</option>
    <option value='01'>01</option>
    <option value='02'>02</option>
    <option value='03'>03</option>
    <option value='04'>04</option>
    <option value='05'>05</option>
    <option value='06'>06</option>
    <option value='07'>07</option>
    <option value='08'>08</option>
    <option value='09'>09</option>
    <option value='10'>10</option>
    <option value='11'>11</option>
  </select>

<select name="mm">
    <option selected="selected">Month</option>
    <option value='01'>01</option>
    <option value='02'>02</option>
    <option value='03'>03</option>
    <option value='04'>04</option>
    <option value='05'>05</option>
    <option value='06'>06</option>
    <option value='07'>07</option>
    <option value='08'>08</option>
    <option value='09'>09</option>
    <option value='10'>10</option>
    <option value='11'>11</option>
  </select>
</form>

MySQL如下;

    $caption = $_POST['dd'].-$_POST['mm'];
    
    $sql = "INSERT INTO pages SET caption = '$caption'";

解决方法

使用sprintf设置值的格式:

$caption = sprintf("%02d-%02d",$_POST['dd'],$_POST['mm']);

这里的关键是将数据作为字符串处理,并且不要像-$_POST['mm']那样对数据进行数学运算,0x0000000a会将其视为数字。在数字中,总会省略前导零,因为它们始终存在。就CPU而言,10实际上类似于// Like interface abstract class IIO { public virtual async Task<string> DoOperation(string Name) { throw new NotImplementedException(); // throwing exception // return await Task.Run(() => { return ""; }); // or empty do } } // Implementation class IOImplementation : IIO { public override async Task<string> DoOperation(string Name) { return await await Task.Run(() => { if(Name == "Spiderman") return "ok"; return "cancel"; }); } }

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...