私はフィールド項目の一つとして、CVV番号を受け入れ、HTMLフォーム持っている - あなたが見ることができるように入力値をHTMLフォームのプレースホルダと同じにすることはできますか?
<label for="cvv">CVV</label>
<input type="text" placeholder="123" maxlength="3" id="cvv" name="cvv">
は、それがplaceholder="123"
を持っています。私は、アレイの一部として、私のデータベースにCVV番号を入力しています -
$pay = array(
'cardno' => $cardno,
'exp' => $this->input->post('exp'),
'cvv' => $this->input->post('cvv'),
'name' => $this->input->post('name'),
'org' => $this->session->userdata['user_data']['org']
);
$this->db->insert('payment', $pay);
私はプレースホルダ値と同じである123
除くデータベースに任意のCVV値を入力することができますよ。私は、次のエラーを取得しておく -
Error Number: 1366
Incorrect integer value: '' for column 'cvv' at row 1
INSERT INTO `payment` (`cardno`, `exp`, `cvv`, `name`, `org`) VALUES ('258135', '04/20', '', 'Joe Bloggs', '15')
Filename: C:\xampp\htdocs\ci_redesign_newdb\system\database\DB_driver.php
Line Number: 330
私はcvv as 123
で、データベースに挿入する前に$pay
配列を印刷するとき、CVVフィールドが空である -
Array ([cardno] =>258135 [exp] => 04/20 [cvv] => [name] => Joe Bloggs [org] => 15)
しかし、私はCVVを変更した場合
Array ([cardno] =>258135 [exp] => 04/20 [cvv] => 103 [name] => Joe Bloggs [org] => 15)
をそのフィールドが移入されますから、私はエラーなしでデータベースにそれを入力することができるよ - 他の何かに値は、CVVフィールドが取り込まれます。フォームがフィールドのプレースホルダーと同じ値、つまりこの場合は123
を受け入れない理由は何ですか?
EDIT 1
この問題は、フォーム内のすべての入力フィールドの存在のようです。私はcvv
のためにそれに気づいただけだったので、私は123
をテストとして入力した。したがって、入力された入力値がプレースホルダ値と同じであるすべてのフィールドが入力されていないように見えます。
EDIT 2 - 問題の原因
問題は、jQueryのソースファイルのバージョン2.0.3から発信されたように見えます。
<script src='<?php echo base_url(); ?>assets/js/jquery-2.0.3.min.js'></script>
と私は私のプレースホルダと同じであった入力値を投稿することができました - - 私は私のコードでファイルをコメントアウト
Array ([cardno] => 123456789[exp] => mm/yy [cvv] => 123 [name] => Name [org] => 15)
を、これは編集することで解決することができるものですjQueryソースファイル?私はそのような変更を行うべきですか?他の場所で問題を引き起こす可能性のある変更を加えたくない。
cvvに値を挿入してもよろしいですか?もう一度検証をチェックしてください。そして、あなたはphpMyAdminを通して123を挿入しようとしましたか?それが動作する場合は、あなたのコードに何か問題があります。 –
@BenJunior私は値123をcvvに挿入していると確信しています。ローカルホストとテストサーバーで複数回チェックしました。 SQLyogに値を手動で入力することができます。コードに間違いがありますが、私は確信しています。 123以外の値を挿入できるので、PHPは問題ありません。プレースホルダが何らかの原因で競合を起こしていると思います。 –
さて、プレースホルダーを '103'にして、' 123'と '103'の両方の値を試してみてください。 'maxlength'にも注意してください - CVVの長さは4桁です。 – Tpojka