先日やらかしたお恥ずかしいミスを1つ暴露。
会員制サイトのデータをMySQLに入れてた案件でのできごと。
「会員編集がおかしい」と聞いて見ると、そこは会員情報編集画面。編集対象と異なる人物のデータが開いてしまう。単純に会員一覧から個別の編集画面を出すのに、JavaScriptを使っていた。
うまく指定どおりに開く場合とそうでない場合があった。
会員には内部用に通しのID番号を振ってた。そういつもの「auto_increment」だ(:p
その番号をJavaScriptから別窓開いてDBを引くPHPへPOSTするのだが、どうしてもID番号がズレる。例えば、ID38番のデータを呼ぶと46番のデータが(゚Д゚)
久しぶりの怪現象に戸惑いながら気付くのに30分もかかってしまった(^^;
IDのフィールドに「ZeroFill」 してたのだ。それを無処理でJavaScriptの引数としてFormボタンのonClickに書き出していたのであった(恥
JavaScriptは、Zerofillされたゼロから始まる数値は8進数と思い込む仕様。桁数を合わせたくて安易にZerofillかけちゃって何も考えて無かったもんだから、114が162、なんて変なズレを起こしていた(‘A`)
こんな恥ネタなら沢山有るんだけど、これ以上は自主規制(〃▽〃)
・・・以上、ほのぼの体験談でした。
コメント