• 締切済み

もっと短くコードをかきたい

mauraの回答

  • maura
  • ベストアンサー率46% (48/104)
回答No.1

$pid = $_GET["pid"] == "" ? $_COOKIE["pid"] : $_GET["pid"]; if ( $pid == "" ){ setcookie("pid", $pid, time()+60); }

関連するQ&A

  • 一つのコードで何ページも表示するとき

    いつも、疑問に答えてくれてありがとうございます。 下に書いたコードのように、getをつかってページが変わるようにした場合で疑問を持ちました。 何人もの人が一度にアクセスしてきても、下に書いたコードで誤作動を起こしたり、動作が遅くなったりはしないのでしょうか。 もし誤作動を起こすのであれば、copy関数をつかって見ようかと思っているのですが。 よろしくお願いいたします。 --test.php--------------------------------------- <?php if($_GET['page']==1){ $content="ほにゃららページ"; }elseif($_GET['page']==2){ $contentテストですページ"; }else{ $content="トップページ"; } echo<<<test <table> <tr> <td>${content}</td> </tr> <tr> <td> <a href=test.php?page=1>ほにゃららページ</a> <a href=test.php?page=2>テストページ</a> <a href=test.php>トップページ</a> </td> </tr> </table> test;

    • ベストアンサー
    • PHP
  • クッキーの削除方法

    PHP5にて以下のようにクッキーを連想配列でセットしています。 setcookie("cookie[1]", "10", time()+600); setcookie("cookie[2]", "20", time()+600); setcookie("cookie[10]", "100", time()+600); この場合、一部のクッキー(例えばcookie[2]で設定したもの) だけを削除するにはどうすれば宜しいのでしょうか? 試しに以下の様に記述してみましたが、上手く削除されませんでした。 setcookie("cookie[2]"); また、全てのクッキー(全ての連想配列)を いっぺんに削除する方法もありましたら、お教えください。 宜しくお願いします。

    • ベストアンサー
    • PHP
  • setcookieの位置

    これは正しいカウンターのサンプルになり 数値は1、2、3、4・・・と増えていきます。 -------------------------------------- <?php if(isset($_COOKIE["ponpon"])){ $kazu = $_COOKIE["ponpon"] + 1; }else{ $kazu = 1; } setcookie("ponpon", $kazu); echo $kazu."回目のアクセスです。"; ?> -------------------------------------- クッキーをはじめにセットするということで 「setcookie("ponpon", $kazu);」の位置を最初に置くと 数値は1のまま変わりません。 -------------------------------------- <?php setcookie("ponpon", $kazu); ← if(isset($_COOKIE["ponpon"])){ $kazu = $_COOKIE["ponpon"] + 1; }else{ $kazu = 1; } echo $kazu."回目のアクセスです。"; ?> -------------------------------------- 理屈からするとクッキー自体はセットされているはずなのですが カウントの数字は1のままなで増えていかないのですが なぜなのでしょうか? 「setcookie("ponpon", $kazu);」を最初の行に置くと クッキー自体がセットされないのでしょうか? ちなみにセッションのサンプルの場合は始まりの行でセットされ きちんと1,2,3,4・・・とカウントされるので どこが違うのか良く分かりません。 -------------------------------------- <?php session_start(); if(isset($_SESSION["kazu"])){ $_SESSION["kazu"]++; }else{ $_SESSION["kazu"] = 1; } echo $_SESSION["kazu"]."回目のアクセスです。"; ?> -------------------------------------- よろしくお願いいたいます。

    • ベストアンサー
    • PHP
  • COOKIEを使った二重投稿禁止する方法

    COOKIEを利用して二重投票を禁止するようにしたいと思っています。 $id=12; //スレッドID if(isset($_COOKIE[$id])){ print("連続投票です。"); exit; }else{ setcookie($id , "vete_flg" , time()+$3600*24*7); } 上記のようにしているのですが、COOKIEにきちんと記録されず、 print_r($_COOKIE)を見たところ、上記と同じように設定した 新規投稿スレッドのCOOKIE「Array ( [entry] => entry_flg ) 」 が表示されてしまいます。 どうすれば用途別にCOOKIEを切り分けて二重投稿等を禁止できるのか、 その方法を教えてください。m(_ _)mペコリ

    • ベストアンサー
    • PHP
  • セッションの削除

    例えば www.hoge.com/foo/index.php で session_start(); setcookie("bar",session_id(), time()+3600); として画面遷移を行いながら登録作業を行い、 完了画面regist.php で session_start(); $_SESSION = array(); if (isset($_COOKIE[session_name()])) { setcookie(session_name(), '', time()-42000); } session_destroy(); としましたが$_COOKIE["bar"]が初期化されません。 どのようにしたら良いでしょうか? 教えてください。 宜しくお願いします。

    • ベストアンサー
    • PHP
  • クッキーがセットされません

    PHP初心者です。 よろしくお願い致します。 環境 レンタルサーバーを借りています PHP 5.2.9(CGI) 過去のスレッドも参考にしながら、クッキーを設定しましたが、保存されません。 ***コードはじまり*** <?php // cookie があればプラス1、無い場合は1にする if ($_COOKIE['visit']) { $count = $_COOKIE['visit'] + 1; } else { $count = 1; } setcookie("visit", $count); ?> こんにちは。 <?php print $count ;?> 回目の訪問ありがとうございます。<br> <?php print_r($_COOKIE); ?> ***コードおわり*** ***出力結果はじまり*** こんにちは。 1 回目の訪問ありがとうございます。 移動 Array ( ) ***出力結果おわり*** 何度読込なおしても、出力結果はかわりません。 よろしくお願い致します。

    • 締切済み
    • PHP
  • phpのコードでこの2つは何が違うんでしょうか?

    phpのコードでこの2つは何が違うんでしょうか? 問題文が画像に書いてあるもので、上のコードは私が考えたもので、下のコードは画像の問題の答えです 私の解いた答え <?php $age = 10; if(10 <= $age < 20){ echo("10代"); }else if(20 <= $age < 30){ echo("20代"); }else if(30 <= $age < 40){ echo("30代"); }else{ echo("それ以外"); } 画像の問題文の正解 <?php $age = 43; if($age >= 10 && $age < 20){ echo("10代"); }else if($age >= 20 && $age < 30){ echo("20代"); }else if($age >= 30 && $age < 40){ echo("30代"); }else{ echo("それ以外"); }

    • ベストアンサー
    • PHP
  • cookieに複数のIDを持たせる場合

    cookieについての質問です。 是非お力をお貸しください。よろしくお願いします。 2重投稿を防ぐ方法としてcookieを使用したいと思っています。 下記のように書いたのですが、うまくID別に認識してくれません。 $ID = ひっぱてきたID; if(isset($_COOKIE['$ID'])){ print('エラー'); exit; } else{ setcookie('$ID',time()+60); } $_COOKIE['$ID']←こういった感じで使用することはできないのでしょうか? よろしくお願いします。

    • ベストアンサー
    • PHP
  • クッキー認証>クッキー削除ができない!!

    今回は、クッキー認証画面を作成している際、 エラーが出てしまって先に進めず投稿しました。 下記にプログラム記載 ----H_01.html---------------------------------- <html> <head> <title>クッキー認証</title> </head> <body> <center> <form method="POST" action="H_02.php"> 名前<input type="text" name="name"> パスワード<input type="Password" name="pass"> cookieを記録する<input type="checkbox" name="chk"> <input type="submit" value="送信"> <input type="reset" value="リセット"> </form> </center> </body> </html> ------------------------------------------------ -----H_02.php---------------------------------- <?php $name = $_COOKIE['name']; $pass = $_COOKIE['pass']; $cnt = $_COOKIE['chk']; if ($cnt == True) { $lim = time()+7*24*60*60; //有効期限1週間 setcookie('name',$name,$lim); setcookie('pass',$pass,$lim); } else { setcookie('name'); setcookie('pass'); } ?> ------------------------------------------------ else文内の、setcookie二行にエラーが出ます。 htmlでチェックボックスにチェックが施されていない場合、クッキーを削除。 調べてみたのですが、どうしたらよいのかわからず 投稿しました。よろしくお願いします。

    • ベストアンサー
    • PHP
  • セッションに登録されたデータを全て破棄する方法

    http://php.net/manual/ja/function.session-destroy.php 上記サイトのPHPマニュアルにセッションのデータを削除する方法が載っていました。 しかし、以下のスクリプトの仕組みだけが全く分かりません。 どなたか、教えてください。お願いします。 if (ini_get("session.use_cookies")) { $params = session_get_cookie_params(); setcookie(session_name(), '', time() - 42000, $params["path"], $params["domain"], $params["secure"], $params["httponly"] ); }

    • 締切済み
    • PHP