【php】 TOTPのワンタイムパスワードを生成する
問題 TOTPのワンタイムパスワードをphpで生成したいです。 答え 例 // ライブラリを利用するか、関数を自作してbase32_decodeしてください $binary_secret = Base32::decode […]
【php】base32_decode()
問題 phpで、base32_decode() したいです。 答え 例 function base32_decode($s) { $m = array( "A" => 0, "B" => 1, "C" => 2, "D" […]
【windows】スタートメニューやタスクバーのフォルダ
問題 スタートメニューやタスクバーのショートカットなどは、どこかのディレクトリに入ってますか? 答え スタートメニュー(全体) C:\ProgramData\Microsoft\Windows\Start Menu 変更 […]
【php】Cannot execute queries while there are pending result sets
問題 MySQLに接続して、SQLを実行する処理をいくつか実行していると、突然こんなエラーが出ます。何が起きているのですか。 PHP Fatal error: Uncaught PDOException: SQLSTAT […]
MySQL8.0で PASSWORD()の代替関数
問題 MySQL8.0では、PASSWORD()関数がなくなっています。 MySQL5.7以前のPASSWORD関数と同じ結果を得る方法はないですか? 答え 別の古いMySQLに接続できる場合 古いMySQLに接続してP […]
RHEL9でphp5.6をインストールしたい
問題 OSはRHEL9互換(Rocky Linux 9 など)で、php5.6をインストールしたいのですが、remiリポジトリなどではphp7.4以上しか提供されていないようです。 php5.6はインストールできないです […]
Let’s encrypt の暗号化方式がECDSAになっていた
問題 Let’s encrypt で証明書を取得したら、秘密鍵が見慣れない形式になっていました。 妙に短いです。 RSA方式ではなさそうです。古い環境で使えない。 なんでしょう? 答え Let’s […]
Bootstrap5をカスタマイズしたい
問題 Bootstrapの色を変えたり、行間を変えたりしたいです。 答え Bootstrapの見た目を変える方法。 CSSを書けば済むパターン CSS変数で対応できるものは以下でよい。 :root { --bs-font […]
composer のバージョンと対応phpバージョン
composer2.2まではphp5.3以降がサポートされている。 composer2.3以降はphp7.2.5以降が必要。 composer はphpで書かれている。実行権限をつけて実行すると phpとして実行される。 […]
FormのデータをaxiosやjQuery.ajaxで送信する
問題 画面上のHTMLのformの内容をajaxで送信したいです。 答え axiosやjQuery.ajaxは送信するデータにFormDataを渡してやるとフォームの内容を送信してくれる。 ファイルも送信できる。 例) […]
PDFファイルにタイムスタンプを付与する(Acrobat)
問題 PDFファイルにタイムスタンプの付与をするにはどうするとよいですか。 答え Acrobatはタイムスタンプを付与できます。 Acrobat Reader も同様。 タイムスタンプサーバーの設定 タイムスタンプはいつ […]
【PhpSpreadsheet】Spreadsheet objects cannot be serialized
問題 PhpSpreadsheetでシートをコピーしようとしたらエラーになりました。 既存のシートを clone したタイミングで出てます。 Spreadsheet objects cannot be serialize […]
【PhpSpreadsheet】テンプレートからシートをコピーして増やす
問題 PhpSpreadsheetで、既存のExcelをテンプレートにして、ひな形のシートをコピーして新しいExcelを作りたいです。 新しいワークシートを作って、元のワークシートからコピーして addSheet() す […]
error: Autoconf version 2.68 or higher is required
問題 古いLinux環境で、xdebugをコンパイルしようとしたら以下のエラーになりました。 # phpize Configuring for: PHP Api Version: 20190902 Zend Module […]
【openssl】ee key too small のエラー
問題 証明書を使ったSSL通信で以下のエラーが出ます。 ~ could not load PEM client certificate, OpenSSL error error:140AB18F:SSL routines […]
【Javascript】Data URLとBlobの相互変換、ダウンロード
Data URLをBlobに変換 URLをfetchで取得する。 let dataUrl = "data:image/png;base64,~~~base64エンコードしたバイナリ~~~" fetch(dataUrl) […]
【php-fpm】遅い処理を特定する
問題 php-fpm の処理がなんだか重そうなのですが、遅い処理を特定できるでしょうか。 答え slowlog 遅いリクエストの記録を有効にする。 以下のような設定ファイルに、 /etc/php/8.2/fpm/pool […]
Windowsで利用できるSSHクライアント
問題 Windowsでsshしたいですが、何を使えばよいですか。 答え TeraTermなど定番ソフトがありますが、Windows自身もopensshの機能を追加できるようになって、sshコマンドができるようになるなど、 […]
MariaDBのパッケージの更新に失敗する
問題 以下のエラーで yum update できないです。 Downloading packages: warning: /var/cache/yum/x86_64/7/mariadb-main/packages/Mar […]
httpsでアクセスできるgitリポジトリの構築
問題 gitの共有リポジトリを作りたいです。 ssh://~ よりは https://~ でアクセスできるものにしたいなと思っています(運用上の都合で)。 答え http(s)でアクセスできるとだいたいのクライアント側も […]