2016/12/16ノンプログラマーですが勉強のためにPHP勉強しています。今回はPHPで「過去に見たページを表示する閲覧履歴機能」を実装するコードサンプルです。クッキーにタイトルとURLを保存して、取り出します。他にも方法があると思いますし、ベストではないと思います。初心者向け・簡単な実装であればイケると思います。参考にしたサイト最初にサンプルコード最初にクッキーを保存するためのPHPサンプルコードです。history.phpにでもしてください。実際のものと少し変えましたので、もしかしたら間違えた部分もあるかも。'<p>過去に見たページはありません。PHPで閲覧履歴機能を実装するにはまずsetcookie()を使います。setcookie()の細かい内容はこちらを見てください。私はここから始めましたが、引数に何を入れるのかくらいしか理解していませんので、そんな感じで大丈夫だと思います。ハマったところは、setcookieではクッキーに配列をそのまま突っ込めませんでした。ややこしかったのですが、クッキーを配列にすることはできても配列を突っ込むことができないのです。すればそれぞれに第二引数をabc、defにすることはできますが、array(abc,def)はできないんですね。当たり前じゃんと思うかもしれませんが、できたら楽じゃん。serializeとunserializeを使って一括でクッキーに保存するようにしています。serializeについては何なのか良く分かりません。理解としては配列を文字列にするのがserialize、文字列を配列にするのがunserializeということかなと思っています(笑)もう一つハマったのがクッキーの保存上限です。サイズなのか個数なのかはわかりませんが、サンプルコード例では"3"としています。多すぎると保存上限を超えて変な感じになります。後には記述できないようです。最初</body>の直前に入れていましたがエラー出ましたので、最初に記述するようにしたらOKでした。実装の手順setcookie()を使うことが分かってもクッキーをセットする最後に使いますので、サンプルコードの流れもざっくり伝えます。1まず今見ているページのURLとテキスト(タイトル)を、それぞれ別の配列に保存2過去にページを見ていなければ(クッキーが保存されていなければ)、1をそれぞれクッキーに入れます。setcookie()をURLとテキストで2回しています。クッキーに入れる際には配列から文字列に変換(serialize())をします。3過去にページを見ていれば、1の配列の最後に突っ込んでいきます。4途中で重複があれば、突っ込まないようにします。配列の中の重複チェックをしています。5配列が上限数に達したら終了63でできた配列を2と同様にserialize()してクッキーに入れます。7保存されたクッキーをunserialize()で取り出します。setcookie()で保存されたクッキーは、$_COOKIE['']で取り出せます。簡単な正しいやり方や上限のない方法もあると思うけど・・ノンプログラマーなので、正しいこととか簡単なやり方とか分かりません(笑)という言い訳をしつつ、自分のサイトだけでしか使わないのでいいかなと。DB使えば、クッキーにはユーザーIDだけを発行してDBから情報を引き出すみたいなことはできそうですが、めんどくさいからいいや。参考にしたサイトページの閲覧履歴を表示_ブログ_zanmai.net閲覧履歴機能を実装するにあたり、何から始めたらいいのか分かりませんでしたが、まず初めに見たブログです。分からなかったので、全然違うことやりました。ありがとうございました。クッキーに複数の値を一括登録する方法serialize()とunserialize()でクッキーへの配列セットが簡単になりました。ありがとうございました。コメントをキャンセルメールアドレスが公開されることはありません。...Googleに救われた?!やっぱりGoogle検索エンジンのテクノロジーはすごかった。とある会社から営業電話が掛かってきた。views東急不動産マンションブランドの評判。