ど素人から毛を生やす。<延>

Web

scriptタグの中のURLはHTMLエスケープしちゃダメ…のはずが。

どもです。

とある旧いWebシステムのアップデートを行いました。
どれくらい旧いかといえば、推奨環境がIE5~8という旧さです。

で、アップデートの直後、窓口の方から「ボタンを押したらエラーになった!」と報告があったのですが、詳しく状況を伺うと推奨環境のIEでなくGoogleChromeでアクセスしていること、そもそも今回アップデートした箇所とは無関係であることがわかりました。ヲイ。

で、肝心の何がエラーを起こしていたのか、ですが。... 全文を読む »

CSSだけで要素を裏返すアニメーションを実装する

どもです。
所用でツールを作っていたときに、コインが裏返るようなアニメーションが欲しかった。

というわけで実装してみました。

シンプルに裏返す


<div 
... 全文を読む »

$(document).keypress(function(){})はスマホの個体差で爆死することを僕は学んだ。

どもです。

バーコードリーダをBluetoothでスマホに接続するタイプのウェブシステムを作っていたのですが、いざ実機(AndroidのGoogleChrome)で動かしてみると稀にホーム画面に飛んでしまう。なにゆえ?

再現条件を調査したところ、
①alertでOKを押した直後、またはalertのフォーカスを外した直後
②Enterに相当するキー(CR)が入力されると... 全文を読む »

XMLなのにresponseXMLがnullでresponseTextに値が入るときに確認すること

どもです。

XMLをjsで読み込む簡単なプログラムを作っていたはずなのですが、何故か読み取ったファイルのresponseXMLがnullになる。
responseTextには読み込んだファイルの中身が入っているので、読込後のエラーのはずです。

overrideMimeType()など試してみましたが、どうにもダメ。テキストでしか読めない。何故だ…

と思っていたら、思わぬところにヒントを発見。... 全文を読む »

array_search()やin_array()する前には、ちゃんとarray_map('trim', $array)するんだぞ!ってメモ。

どもです。
しょーもないことでハマったので備忘。

外部から貰ったCSVを取り込むのに、その項目が何列目にあるかをarray_search()で照合しようとしたら、特定の項目でfalse食らってしまったわけですね。

array_search()でやらかし易いミスといえば、

・第三引数にtrueを設定しないことで、文字列型と数値型の比較になってしまう。... 全文を読む »

file_get_contents()はhttpでないと持ち帰るものが変わってしまう?

どもです。
file_get_contents()に関する備忘録。

PDFを生成し、添付したメールを送信。そのためには作成したPDFをいちど取得しなければなりません。
しかし使用しているPDF作成ライブラリの仕様として、header()を変更してechoしてしまいます。
このため、include()でなくfile_get_contents()を使って生成データを「取得」することが求められます。... 全文を読む »

PHPでファイルをダウンロードさせようとしたら空の実行ファイルがダウンロードされた事案のたぶんレアケース。

どもです。

DBからcsvをダウンロードするphpを移植したら、空の(実行ファイル名).phpがダウンロードされてしまう事象が起きました。
開発や検証中にはそのような事例は一度も無かったのですが、はて。

この原因ですが、端的に言えば何も出力できないのに出力しようとした... 全文を読む »

Ajaxで403エラーを食らった原因がファイル拡張子だった話。

どもです。
AjaxでデータをPHP処理しようとしたところ、403エラーになりました。

ForbiddenYou don't have
... 全文を読む »

jQueryのイベント発火順を理解して、簡単に「それ以外を押したら閉じるサイトメニュー」を実装する。

どもです。

HTML&CSSコーダーから離れて久しい僕ですが、久しぶりにまともにスマホ用ページを作ることに。
というわけでタッチで開閉するメニューを…

と思ったのですが、スマホ用ブラウザやアプリが使い勝手良く進化しているので、4年前の記事... 全文を読む »

Yahoo!出荷ステータス変更APIなのに「Request Parameter Error : Pay」

※2019/02/19 内容に間違いがあったので修正して再投稿。

どもです。
Yahoo!出荷ステータス変更APIにデータを送ったのですが、

<Code>od90101</Code>
... 全文を読む »

Yahoo!APIのエラーコードめも

Yahoo!のAPIはエラーコード検索できないのが辛いんだってば!!!!

od系(od90101とかod91801とか)

https://developer.yahoo.co.jp/webapi/shopping/orderChange.html
https://developer.yahoo.co.jp/webapi/shopping/orderStatusChange.html... 全文を読む »

MySQLから取り出した「日付データがあるとき」の条件分岐を、できるだけ最短の記述で行いたい。

どもです。

PHPで日付データがあるとき、の条件分岐をしたい。

このとき、厳密な日付フォーマットチェックを行いたいのであれば、DateTimeクラスを用いるのが妥当です。
参考サイト:
[Qitta]【PHP】DateTimeクラスでcheckdate()より汎用性のある日付チェックを行う... 全文を読む »

[MySQL]複数行のUPDATEを1回のSQL実行で済ませたい。

どもです。

MySQLで複数の行を更新したい場合、多くの場合は

foreach($array as $id 
... 全文を読む »

MySQLをPHPでSELECTしたとき、resource型で保持して使用するときにwhileするのと一度配列にぶち込んでforeachするのとで、どれくらい負荷と速度に差があるのか調べてみた。

どもです。

つい昨日、こんなことを呟きました。

膨大な行のMySQLをPHPでSELECTしたとき、resource型で保持して使用するときにwhileするのと一度配列にぶち込んでforeachするのとで、どれくらい負荷と速度に差があるのか知りたい。
いや前者の方が良いのはわかるんだけど!可能なら後者でいきたいんだ!

ということで、調べます。... 全文を読む »

FTPS中のファイルを更新日時順で取得したかった話。

どもです。

FTPS上にアップされたCSVをDBに落とすプログラムを作成していたのですが、このときにファイル名は問わないという縛りがあり、では何を基準に複数ファイルがあったときの処理順を定めるべきか。

普通に考えたらファイルの更新日時かアップロード日時ですな。
ファイル更新日時の昇順といたしましょう。

さて、どうすればそれが適うのか。... 全文を読む »

inputに半角だけ入力させたい

どもです。
フォーム回りは本当にブラウザ差異が活発極まりなく。

さて、まずはこの要望についてですが、
ブラウザ側での制御はいくらでも抜け道があるため、action側で全角⇒半角処理を行う... 全文を読む »

PHP4サーバーにXML/ParserをインストールしたらFatal errorになった話

どもです。

PHP4のサーバーでXMLの読み取りを行いたく、【Pear】Package Information: XML_Serializer... 全文を読む »

[MySQL]JOIN対象のセルが空の場合は指定の値でJOINしたい。

結論から言えば、IFやIFNULLはFROMでフツーに使えるゾ☆って話。


SELECT
 β.name
FROM
 α
 
... 全文を読む »

WordPressのテーマ編集でバグってファイルの中身が消えたとき、応急処置になるかもしれないやり方。

どもです。
いつ頃からか、WordPressのテーマを編集しようとすると、
CSSファイル以外で以下のエラーが発生するようになりました。

致命的なエラーをチェックするためにサイトと通信できないため、PHP の変更は取り消されました。
... 全文を読む »

[MySQL]空文字 or NULL を一息で判別したかった話

どもです。
MySQL初心者です。

カラムAにデータが入っていたらAを、入っていなかったらBの内容を取得したかったのですが、
「入っていない状態」は空文字とNULLの2パターンが想定される。
DB構成としてアカンくないか、NULL許容させんなや、などとツッコミはありますが、古いDBに文句言っても仕方ない。... 全文を読む »