自定义表单采用十进制,但db插入整数,但后面有一个0。为什么它不能给我正确的十进制数?
Db字段
fiske_vaegt DECIMAL( 2,1 ) NOT NULL,
表单输入字段
<p><input type="number" step="any" name="fiske_vaegt" id="fiske_vaegt" />kg</p>
检查fiske\\u vaegt字段,如果我输入2.4,它会将其更改为2.0,并将2.7更改为3.0
有谁对这个该死的问题有经验吗?
邮递
if ( isset( $_POST[\'submit\'] ) ){
$fiske_vaegt = $_POST[\'fiske_vaegt\'];
}
插入
$registrering = $wpdb->insert(
$wpdb->prefix . \'registreringer\',
array(
\'fiske_vaegt\' => $fiske_vaegt
),
array(
\'%d\'
)
);
最合适的回答,由SO网友:sakibmoon 整理而成
在内部$wpdb->insert
, 您正在使用%d
用于存储整数,使用%f
相反,它将存储浮点/十进制值。
$registrering = $wpdb->insert(
$wpdb->prefix . \'registreringer\',
array(
\'fiske_vaegt\' => $fiske_vaegt
),
array(
\'%f\'
)
);