タグ

phpに関するkootaroのブックマーク (13)

  • PHPまとめ - セッション管理

    HOME | TOP ■ 概要 セッションは、アクセスしてきた人が次にアクセスした時も同一のマシン環境からかどうかを判別するための仕組みです。 セッションを開始する時には『セッションID』というものを発行します。 これはその場で生成したランダムな文字の並びなのでこの中に情報が盛り込まれているということはありません。 アクセスしてきたユーザとは何の関連性もないただのランダムな文字列を発行することは、セッションIDを他の情報から割り出されないようにするためには重要なことです。 発行したセッションIDは、一方はアクセスしてきた人のブラウザに保存してもらい、もう一方はサーバ側で持っておきます。 このブラウザ保存はクッキーと言われる仕組みを使っているのでブラウザがクッキーを受け入れない設定になっていればこの方法は使えないということになります。 ログイン認証の時には、ユーザ名とパスワードが一致すればセ

  • セッションハイジャックを防ぐ7つの方法 – sawara.me

    会社のブログに寄稿させていただきました。 PHPのセッション情報をデータベース(MySQL)に保存するぜ! こちらの記事ではセッション情報をDBサーバーに保存させて、ロードバランサーで接続するサーバーが切り替わってもセッションが維持される方法について記載しましたが、セッションハイジャックについては言及しておりません。ということで今回はセッションハイジャックを防ぐ方法について紹介します。 セッションハイジャックとはなにか そもそもセッションハイジャックとはなにか。cookieでセッション管理を行うPHPの場合はcookieにセッションIDを保存します。このセッションIDを他のユーザーのものに書き換えてなりすましてしまうのがセッションハイジャックです。cookie情報なんてのはブラウザで簡単に書き換えられてしまいますからね。 セッションハイジャックにおける対策としては大まかに分けて2つの対策、

    セッションハイジャックを防ぐ7つの方法 – sawara.me
  • Cookieとセッションをちゃんと理解する - Qiita

    引用/参考書籍 「よくわかるPHPの教科書」 「初めてのPHP5」 「パーフェクトPHP」 「体系的に学ぶ安全なWebアプリケーションの作り方」 「PHPスーパーサンプル」 「プロになるためのWeb技術入門」 インターネット上で情報をやりとりするということは、大事な内容をはがきに書いて相手に送るようなもの。その情報が相手に届くまでに誰に見られるかわからない。 概要 HTTPはステートレスなプロトコル。「状態」を持てない。 例えば、「ログイン」ページの場合、「ログインしているかどうか」のチェックをする必要がある。 NG例) http://www.littleforest.jp/itemlist?login=ok loginパラメータを調べてokかどうかを調べる。 →→パラメータを容易に改変できてしまう。 解決策として、Cookieとセッションを使う。 Chromeで、Cookieを確認するに

    Cookieとセッションをちゃんと理解する - Qiita
  • ログイン画面を作る | PHP勉強しるよ

    一定期間更新がないため広告を表示しています

    ログイン画面を作る | PHP勉強しるよ
  • [php] パスワード認証ログインシステムのサンプル

    パスワードフィールドに入力された文字列を設定されたパスワードと照合し、一致していたらログイン後画面に飛ばす 簡単なログイン処理のサンプルソースです。 CookieSession両方晒しておきます。 phpファイルを二つ用意しますが、便宜的に login.php → ログイン画面 admin.php → ログイン後画面 としています。 先頭行にパスワードを設定する定数がありますが、 ファイル数の多いスクリプトではconfig.phpなどを作ってincludeすることが多いです。 ログイン処理の流れは大体こんな感じです。 パスワードフィールドに文字列入れて送信 送信された文字列が設定されたパスワードと一致するか確認 一致していたらクッキー、またはセッションに暗号化したパスワードを保存して次のページへ遷移 一致していなかったらエラーメッセージを出す ログアウト処理について追記しました Cook

    [php] パスワード認証ログインシステムのサンプル
  • PHP+JavaScriptでクロスオリジンなシングルサインオン認証 - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

    PHP+JavaScriptでクロスオリジンなシングルサインオン認証 - Qiita
    kootaro
    kootaro 2016/05/04
  • 【PHP入門講座】 目次 - Qiita

    【2021/10/15 追記】 この記事は更新が停止されています。PHP を分かった気になって書いていた不正確な内容が多いため,過去の情報として参考程度にご覧ください。また,完成にたどり着けなかったことをお詫びします。原則的には,公式マニュアルの参照をおすすめします。 前書きとか ターゲット層は? 最低限 HTML についてある程度理解をされている方が対象です。 XHTMLCSS についての理解もあった方が望ましいと思います。 C言語 などの基的なプログラミング言語の経験もあれば幾分か理解がラクになるでしょう。なお、講座では XHTML5 の書き方で統一することにします。以下に有用な参考サイトを紹介します。 XHTML5 移行メモ http://kanow.jp/web/xhtml5-memo.xhtml HTMLクイックリファレンス http://www.htmq.com/ W

    【PHP入門講座】 目次 - Qiita
    kootaro
    kootaro 2016/04/07
  • Let'sプログラミング

    PHP は 1995 年にラスマス・ラードによって開発されました。 PHP はサーバーサイドで動作する言語であり、主に動的な Web サイトや Web アプリケーションの開発に用いられます。 PHP はオープンソースで無料で利用できます。また、シンプルな文法であることに加え、歴史が長いため、豊富な情報があることから、初心者の方でも学びやすい言語となっています。 PHP には次のような特徴があります。

    Let'sプログラミング
    kootaro
    kootaro 2016/04/07
  • PHPerの書くコードの保守性・管理性が劇的に上がるのスマートな方法

    みなさんお仕事の進捗どうですか? 今日は ふと今こそ保守性・管理性が劇的に上がるPHPのスマートなコードの書き方まとめを俺が書くときじゃないだろうか。 — そーだい@初代ALF (@soudai1025) 2014, 8月 12 こんな軽はずみな発言をしてしまったが故にネットで触れては行けない3大炎上案件について触れる。 ※ネットで触れては行けない3大炎上案件とは? Excel関連(スクショとか) 宗教(エディタとか) PHP のこと。 で今話題の元ネタを既に@sue445さんが魚拓してくれてる。 「Hello! my name is 404 お探しのページはありませんでした!申し訳ありません。。」 http://t.co/MS8Xy0bCMz 魚拓とっててよかったw http://t.co/UvG3gzsPul — sue445 (@sue445) 2014, 8月 12 (炎上したら即

  • PHP で配列を走査して処理するのは、for / foreach だけじゃない

    PHP で配列の要素にアクセスして、処理を行うには、for や foreach を使うのがおなじみです。 この方法でも良いのですが、PHPには、それ以外にも配列を走査する関数やライブラリがあります。ここでは、配列を走査して処理を行う方法を見てみましょう。 サンプル仕様 このエントリで以下の配列を処理対象とします。array.phpで保存されている想定です。 <?php return [ [ 'id' => 1, 'year' => 1993, 'name' => 'Harada', ], [ 'id' => 2, 'year' => 2001, 'name' => 'Kato', ], [ 'id' => 3, 'year' => 2009, 'name' => 'Aoyama', ] ]; この配列について処理を行います。 配列内に連想配列が格納されており、nameとyearというキーを

  • 1ランク上のPHP技術者を目指す人のための教材と、勉強のポイント | 優れた上級PHPエンジニアを名乗るためのスキルとは? | Think IT(シンクイット)

    SOLOSのスマートグラス「AirGo3」発売、「Meta Horizon Workrooms」提供終了ほか 1月19日 6:00

    1ランク上のPHP技術者を目指す人のための教材と、勉強のポイント | 優れた上級PHPエンジニアを名乗るためのスキルとは? | Think IT(シンクイット)
  • PHP 定義されている情報(クラス、関数、変数等)を取得する関数まとめ

    PHP には、定義されているクラスや関数、変数などの一覧を取得する関数があります。 ここでは定義情報を取得できる関数群をまとめてみました。ここでは実行例として、Laravel アプリケーションのビューテンプレート(hoge.blade.php)で実行した内容を記載しています。 定義された情報を取得する関数群 get_defined_constants() 定義されている定数を連想配列として取得します。キーが定数名で、要素がその値となっています。 http://www.php.net/manual/ja/function.get-defined-constants.php 出力してみると、1771 個の定数がありました。内容を見ると、フレームワークやアプリケーションで定義されたものの他に、PHP体や extension で多数の定数が定義されていることがわかります。 array (size

  • すぐれた PHP ライブラリとリソース

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    すぐれた PHP ライブラリとリソース
    kootaro
    kootaro 2013/04/26
  • 1