## 2026-03-06 ### Nova パブリッシュ設定の追加 **対象ファイル:** `.nova/Publishing/MBP sgtc.jp CORESERVER.json` Novaエディタからのsgtc.jpへのデプロイ設定を追加。 --- ## 2026-03-07 ### ローカル開発環境対応・各種バグ修正 **対象ファイル:** `index.php`, `memberadmin/index.php`, `courtplan/index.php`, `header.html`, `top.html` #### ローカル環境(MacBook + SSHトンネル)でのDB接続対応 本番サーバー(Coreserver)ではMySQLポート3306を直接使用するが、 ローカル開発時はSSHトンネル(ポート13306)経由で接続する必要があるため、 `php_uname('n')` でMacBookを検出して接続先を自動切換えする処理を追加。 ```php if (strpos(php_uname('n'), 'MacBook') !== false) { $dbhost = '127.0.0.1'; $dbport = 13306; // SSHトンネル経由 } else { $dbhost = 'localhost'; $dbport = 3306; // 本番サーバー } ``` 対象: `index.php`, `memberadmin/index.php`, `courtplan/index.php` #### PHP8対応: $_REQUEST の未定義キーアクセス修正 `REQUESTenc()` 関数内の `$_REQUEST[$request]` → `$_REQUEST[$request] ?? ''` に変更 (PHP8ではキーが存在しない場合にWarningが出るため) #### 絶対パスURLを相対パスに修正(ローカル動作対応) ローカルではドメインルートが一致しないため、絶対パス(`/icons/...`)を相対パス(`icons/...`)に変更。 - `header.html`: SINlogo.png、phoneicon.svg、mailicon.svgのURL - `top.html`: トライアル会員バナーのbackground-image URL #### memberadmin/index.php バグ修正・改善 - SQLiteの `fetchArray()` → `fetchArray(SQLITE3_ASSOC)` に修正(連想配列で取得) - `getRenewalDate()` の実行を1時間ごとに制限(毎回実行は重いため)、ローカルでは実行しない - `getRenewalDate()` にトランザクション処理を追加(`mysqli_begin_transaction` / `mysqli_commit`) パフォーマンス改善と整合性確保のため - `set_time_limit(0)` を追加(大量会員の更新処理でタイムアウト防止) - 会員リスト絞り込みの型安全化: `switch($narrowing)` → `switch((int)$narrowing)` #### courtplan/index.php バグ修正 - SVGタイムライン生成の変数初期化バグ修正: `$tl.=" ? ``` #### db_common.php のローカル判定にnuro.jpドメイン追加 自宅ネットワーク(nuro.jp)からのアクセスもローカル開発環境として認識するよう追加。