我可以知道为什么当它的类型为整数时它没有向我的数据库插入零。我有一个名为contact的表,并且有一个列可以保持用户的10位数长度移动号码。这个数字通常从0开始。例如。 0713423454,0234324545等。
在我的表中,我创建了这样的列..
mobile INT(10) NOT NULL,
在php中我验证它是这样的......
// Check for a mobile number:
if ( !empty($_POST['mobile'])) {
$number = $_POST['mobile'];
if (preg_match('/(0[0-9]{9})/', $number)) {
$mobile = mysqli_real_escape_string ( $dbc, $number);
} else {
$reg_errors['mobile'] = 'You are NOT entered valid Mobile number!';
}
} else {
$reg_errors['mobile'] = 'Mobile number can not be empty!';
}
但是当将手机号码插入数据库时,它不会像这样234223434,435453545等。
所以我想知道有没有办法将我的手机号码0加到数据库..
谢谢。
答案 0 :(得分:4)
答案 1 :(得分:3)
使用zerofill
列。
答案 2 :(得分:3)
您无法存储前导零,但更大的问题是您不应将手机号码存储为INT。将其存储为CHAR。
手机号码是标识符,而不是数字值。如果改变数据模型,你会为自己省去很多悲伤。