奇怪的形式提交错误?

时间:2018-03-05 20:23:19

标签: php html laravel

HTML:

<div class="select is-pulled-right" style="margin-top:-8px;"> <select id="pin_selection_1" name="pin_selection_1" class="is-pulled-right"> <option value="0"> 0 </option> <option value="1"> 1 </option> <option value="2"> 2 </option> <option value="3"> 3 </option> <option value="4"> 4 </option> <option value="5"> 5 </option> <option value="6"> 6 </option> <option value="7"> 7 </option> <option value="8"> 8 </option> <option value="9"> 9 </option> </select> </div><div class="select is-pulled-right" style="margin-top:-8px;"> <select id="pin_selection_2" name="pin_selection_2" class="is-pulled-right"> <option value="0"> 0 </option> <option value="1"> 1 </option> <option value="2"> 2 </option> <option value="3"> 3 </option> <option value="4"> 4 </option> <option value="5"> 5 </option> <option value="6"> 6 </option> <option value="7"> 7 </option> <option value="8"> 8 </option> <option value="9"> 9 </option> </select> </div><div class="select is-pulled-right" style="margin-top:-8px;"> <select id="pin_selection_3" name="pin_selection_3" class="is-pulled-right"> <option value="0"> 0 </option> <option value="1"> 1 </option> <option value="2"> 2 </option> <option value="3"> 3 </option> <option value="4"> 4 </option> <option value="5"> 5 </option> <option value="6"> 6 </option> <option value="7"> 7 </option> <option value="8"> 8 </option> <option value="9"> 9 </option> </select> </div><div class="select is-pulled-right" style="margin-top:-8px;"> <select id="pin_selection_4" name="pin_selection_4" class="is-pulled-right"> <option value="0"> 0 </option> <option value="1"> 1 </option> <option value="2"> 2 </option> <option value="3"> 3 </option> <option value="4"> 4 </option> <option value="5"> 5 </option> <option value="6"> 6 </option> <option value="7"> 7 </option> <option value="8"> 8 </option> <option value="9"> 9 </option> </select> </div><div class="select is-pulled-right" style="margin-top:-8px;"> <select id="pin_selection_5" name="pin_selection_5" class="is-pulled-right"> <option value="0"> 0 </option> <option value="1"> 1 </option> <option value="2"> 2 </option> <option value="3"> 3 </option> <option value="4"> 4 </option> <option value="5"> 5 </option> <option value="6"> 6 </option> <option value="7"> 7 </option> <option value="8"> 8 </option> <option value="9"> 9 </option> </select> </div><div class="select is-pulled-right" style="margin-top:-8px;"> <select id="pin_selection_6" name="pin_selection_6" class="is-pulled-right"> <option value="0"> 0 </option> <option value="1"> 1 </option> <option value="2"> 2 </option> <option value="3"> 3 </option> <option value="4"> 4 </option> <option value="5"> 5 </option> <option value="6"> 6 </option> <option value="7"> 7 </option> <option value="8"> 8 </option> <option value="9"> 9 </option> </select> </div>

PHP:

if ($request->input('pin_severity') != 'disabled') {
    $user->pin_code = 
    $request->input('pin_selection_6') . 
    $request->input('pin_selection_5') . 
    $request->input('pin_selection_4') . 
    $request->input('pin_selection_3') . 
    $request->input('pin_selection_2') . 
    $request->input('pin_selection_1');
}

$user->save();

echo 'pin_selection_1: ' . $request->input('pin_selection_6') . '<br>';
echo 'pin_selection_2: ' . $request->input('pin_selection_5') . '<br>';
echo 'pin_selection_3: ' . $request->input('pin_selection_4') . '<br>';
echo 'pin_selection_4: ' . $request->input('pin_selection_3') . '<br>';
echo 'pin_selection_5: ' . $request->input('pin_selection_2') . '<br>';
echo 'pin_selection_6: ' . $request->input('pin_selection_1') . '<br>';
exit();

我使用6个不同的选择下拉列表来选择6位数的密码,当使用PHP代码保存它时,我收到了一些问题。我的数据库列是一个长度为6 NOT NULL的int。

将引脚保存为123456223344时,它可以正常工作并正确保存。之前我尝试过做一些更复杂的事情020304

它经历了,但是作为20304保存在数据库中,奇怪的是,我的回声与我输入的完全相同,但它在数据库中保存不正确?

1 个答案:

答案 0 :(得分:0)

您的回声正确显示,因为它们充当字符串。

但是当您在数据库中保存引脚时,Laravel / mysql会将字符串转换为整数,因此不匹配。

如果您希望按原样插入,请将pin_code列的数据类型更改为varchar