お客様対応管理プラットフォーム

Customer Support Management Platform

プロジェクト概要

企業向けのクレーム・お問い合わせ管理システムです。顧客からの問い合わせを一元管理し、 効率的な対応を実現するためのWebアプリケーションです。

複数の管理会社に対応し、各会社ごとに独立したチケット管理が可能です。 顧客は専用フォームから問い合わせを送信でき、管理者はダッシュボードから チケットの状況を一覧で確認・管理できます。

使用技術

バックエンド

  • PHP 8.2+
  • MySQL
  • PDO(プリペアドステートメント)

フロントエンド

  • HTML5 / CSS3
  • JavaScript(Vanilla)
  • レスポンシブデザイン

セキュリティ

  • CSRF対策
  • XSS対策
  • SQLインジェクション対策
  • レート制限

その他

  • セッション管理
  • ファイルアップロード
  • メール送信(SMTP)
  • Evernote API連携

主な機能

📝 チケット管理

顧客からの問い合わせをチケットとして管理。 ステータス(未対応、対応中、解決済みなど)で分類し、 進捗を可視化します。

💬 メッセージ機能

顧客と管理者間でメッセージのやり取りが可能。 会話履歴を保持し、過去の対応内容を確認できます。

📎 ファイル添付

画像、動画、PDFなどのファイルを添付可能。 ファイルタイプとサイズの検証を実装。

👥 マルチテナント対応

複数の管理会社に対応。各会社ごとに独立した チケット管理とユーザー管理が可能です。

📊 ダッシュボード

チケットの統計情報を一覧表示。 未対応チケットや放置チケットを アラートで通知します。

🔐 権限管理

スーパー管理者、管理者、スタッフの 3段階の権限管理を実装。 機能ごとにアクセス制御を行います。

📧 メール通知

チケット作成時や更新時に 自動でメール通知を送信。 顧客と管理者の両方に通知します。

🔍 検索・フィルタ

チケットID、ステータス、優先度などで 検索・フィルタリングが可能。 効率的なチケット管理を実現します。

セキュリティ対策

実装済みのセキュリティ対策

  • SQLインジェクション対策:プリペアドステートメントを使用
  • XSS対策:すべての出力でHTMLエスケープを実施
  • CSRF対策:トークン生成・検証による二重送信防止
  • 認証・認可:パスワードハッシュ化、ログイン試行回数制限
  • セッションセキュリティ:httponly、samesite、secureフラグを設定
  • ファイルアップロード:MIMEタイプ検証、ファイルサイズ制限
  • レート制限:IPアドレス・メールアドレスベースの送信制限
  • HTTPセキュリティヘッダー:X-Content-Type-Options、X-Frame-Options等

開発のポイント

セキュリティを重視した設計

本番環境での運用を想定し、セキュリティ対策を最優先に設計しました。 OWASP Top 10を意識し、主要な脆弱性に対する対策を実装しています。

スケーラブルなアーキテクチャ

マルチテナント対応により、複数の管理会社が同じシステムを利用できます。 データベース設計では、会社ごとのデータ分離を適切に実装しています。

ユーザビリティの向上

ダークテーマのモダンなUIデザインを採用し、視認性と操作性を向上させました。 レスポンシブデザインにより、スマートフォンからも快適に利用できます。

エラーハンドリングとログ管理

適切なエラーハンドリングとログ記録を実装し、 問題発生時の原因特定を容易にしました。

デモサイト

利用者側(お客様フォーム)

メールアドレス入力のみでチケットを作成できます。 実際にフォームから問い合わせを送信して動作を確認できます。

管理画面

デモ用ログイン情報:
ユーザー名: admin
パスワード: 12345678

注意:このアカウントはデモ専用です。 実際の本番環境とは別のアカウントです。

管理画面では以下の機能を確認できます:

  • チケット一覧とステータス管理
  • ダッシュボードでの統計情報表示
  • メッセージの送受信
  • ファイル添付機能
  • ユーザー・会社管理(スーパー管理者の場合)

開発期間・規模

  • 開発期間:約3ヶ月
  • コード規模:約15,000行(PHP、HTML、CSS、JavaScript)
  • データベーステーブル数:20以上
  • 主な機能数:30以上