誰かがこれをクリーンアップしてより論理的にするのを手伝ってくれますか? 私は今揚げ物で、良いコード行を書くことができないようです:)
?aid=3056677 のような URL からアフィリエイト ID を取得しようとしています。アイデアは、IF aff id が GET に設定され、セッションと最後に Cookie が優先されるというものです。また、存在しない aff id を設定したくありません。
これを行うための、より実証済みの真の方法を知っていますか?
session_start(); // start session
// affiliate id
$g_aid = (isset($_GET['aid']) && $_GET['aid'] != '') ? trim($_GET['aid']) : false;
$s_aid = (isset($_SESSION['aid']) && $_SESSION['aid'] != '') ? trim($_SESSION['aid']) : false;
$c_aid = (isset($_COOKIE['aid']) && $_COOKIE['aid'] != '') ? trim($_COOKIE['aid']) : false;
if($g_aid !== false) // use get if set
$aid = $g_aid;
elseif($s_aid !== false) // next use session if get not set
$aid = $s_aid;
elseif($c_aid !== false) // cookie
$aid = $c_aid;
else
$aid = ''; // leave it empty
// if $aid is set is it in the $affiliates array?
//If not use the first key from that array
$aid = (isset($affiliates[$aid])) ? $aid : key($affiliates);
// save it and set it
// (maybe shouldn't be done if already stored?
setcookie('aid', $aid);
$_SESSION['aid'] = $aid;