「WordPressで学ぶPHP ④通信編」発売

WordPressで学ぶPHP ④通信編 (WordPressで学ぶPHPとMySQL)
拙著新刊の「WordPressで学ぶPHP④通信編」を、Amazon(Kindle本)で発売しました。

以前に出していた「WordPressで学ぶPHPとMySQL」のPDFから、Webブラウザとサーバーとの通信に関する章を取り出して改訂しました。
また、サーバーから別のサーバーにHTTPで通信する方法について、新たに章を追加しました。
サーバー間通信の事例として、楽天Webサービスの商品検索APIから情報を得て、WordPressの投稿のページに表示する方法を紹介しています。

目次は以下の通りです。

  • 第1章 WebブラウザとWebサーバーの間での通信
    • フォームの基本
      • フォームの作成
      • 入力欄を作る
      • ボタンを作る
      • 「送信」ボタンが押されたときの動作を決める
      • フォームの例
      • 外部からのデータを受け入れる際の注意
    • URLを使ってページ間でデータを受け渡す(GET)
      • URLでのデータのやり取りの仕組み
      • GETメソッドとパラメータ
      • PHPでのデータのやりとりの方法
      • URLに指定された値でヘッダーの背景色を切り替える
      • フォームのデータをGETメソッドで送信する
      • 英数字以外のデータを受け渡しする
    • POSTメソッドでデータを渡す
      • POSTメソッドの概要
      • フォームの書き方
      • データの受け取り方
      • カスタムフィールドの値を扱う
      • 固定ページテンプレートの作成と利用
      • POSTメソッドを使った例
      • サンプルファイルとデバッグ
    • Cookieでデータを受け渡しする
      • Cookieの概要
      • Cookieを保存する
      • setcookie関数の例
      • Cookieの値を読む
      • Cookieを使った例
      • サンプルファイルとデバッグ
    • セッションで複数ページ間でデータを共有する
      • セッションの概要
      • セッションの処理手順
      • セッションを使った例
      • サンプルファイルとデバッグ
    • データ受け渡しの際のPHP特有の機能
      • 複数選択可能なセレクト
      • ファイルのアップロード
      • magic_quotesについて
  • 第2章 他のサーバーとデータをやり取りする
    • HTTPプロトコルの基本
      • Webのプロトコル---HTTP
      • WebブラウザがWebページを表示する手順
      • HTTPリクエストの中身
      • HTTPレスポンスの中身
      • HTTPリクエストとHTTPレスポンスを実際に見る
    • wp_remote_get関数を使ったGETメソッドでの通信
      • WordPressのHTTP関連関数について
      • wp_remote_get関数の使い方
      • wp_remote_get関数の例
    • wp_remote_post関数を使ったPOSTメソッドでの通信
      • wp_remote_post関数の使い方
      • wp_remote_post関数を使った例
      • サンプルファイルとデバッグ
    • wp_remote_post関数でのファイルのアップロード
      • 通常のPOSTとファイルのアップロードの違い
      • ファイルアップロードの例
      • サンプルファイルとデバッグ
    • Web APIの利用(その①・JSON編)
      • Web APIの概要
      • JSONの概要
      • PHPでJSONのデータを扱う
      • 楽天Webサービスを使う準備
      • 楽天の商品を検索して表示するプログラム
      • サンプルファイルとデバッグ
    • Web APIの利用(その②・XML編)
      • XMLの概要
      • SimpleXMLによるXMLの操作
      • 楽天商品検索APIのサンプルのXML版
      • サンプルファイルとデバッグ
    • 他のサーバーと通信する場合の注意点
      • タイムアウトの対策
      • 通信エラーの対策
      • 非同期通信や通信結果のキャッシュ