이 질문은 Silverstripe 포럼에서 원래 질문했습니다. http://www.silverstripe.org/data-model-questions/show/21293Silverstripe 세션 변수는 페이지를 새로 고칠 때만 표시됩니다.
나는 광고에서? 수 = XXX에 따라 전화 번호를 변경하기 위해 다양한 구글의 위치 광고에서 변수를 얻기 위해 노력하고 있어요.
숫자는 페이지를 새로 고치지 않으면 기본값이 표시되고 변수 값이 표시됩니다.
페이지 새로 고침없이 변수 번호를 표시하는 더 좋은 방법이 있습니까? page.php에서 page.ss
<% if phonenumber %>$phonenumber <% else %>0800 xxx xxx<% end_if %>
에서
벤자민 스미스, 당신은 단지 다음을 시도하면 $ _GET에서 나왔을 수를 반환 할 수 있습니다 제안
public function Phonenumber() {
ob_start();
if (!isset($_SESSION)) {
@session_start();
}
if (!isset($_SESSION['number'])){
$phonenumber = $_GET['number'];
$_SESSION['number'] = $phonenumber;
}
ob_end_flush();
return strip_tags (Session::get ('number'));
}
define.php가 무엇이며 왜 define.php에 해당 코드를 제외 시켰는지 물어볼 수 있습니까? – Zauberfisch
왜 세션을 만지작 거니? 간단한 "return $ _GET [ 'number']"는 괜찮을 겁니다, 안 그래요? (당신은 보안상의 이유로 물론 탈출해야한다.) – schellmax
define.php는 $ phonenumber를 googel 위치 광고에서 '? number = 123456'변수로 설정하는 데 사용된다. 사용자가 사이트에 착륙 할 때 전화 번호는 자신의 위치가 무엇이든간에 설정해야하며 방문 기간 동안 변경해서는 안됩니다. 내가 왜 당황하고있는거야? 이는 페이지가 새로 고쳐질 때에 만 작동합니다. –