当它的类型是整型时,我能知道为什么它没有在我的数据库中插入零吗?我有一个名为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!';
}但是当插入手机号码到数据库中时,它没有0,比如234223434,435453545等等。
所以我想知道有没有办法将我的手机号0插入到数据库中。
谢谢。
发布于 2013-01-26 10:45:46
您不能存储前导零,但更大的问题是您不应该将手机号码存储为INT。将其存储为CHAR。
手机号码是标识符,而不是数字值。如果你改变你的数据模型,你会省去很多麻烦。
发布于 2013-01-26 10:39:30
对您的列使用zerofill。
https://stackoverflow.com/questions/14533282
复制相似问题