TYPO3 userFunc为php文件提供GET参数

TYPO3 userFunc为php文件提供GET参数,php,parameters,typo3,typoscript,Php,Parameters,Typo3,Typoscript,我通过userFunc包含了一个php文件,希望给出get参数“?session_start=1”,并在函数中使用它 TS: php文件 <?php class voucher { public function init($content ="", $conf){ $session_start = $conf['session_start_var']?t3lib_div::_GP($conf['session_start_var']):false; $lang_id = ($G

我通过userFunc包含了一个php文件,希望给出get参数“?session_start=1”,并在函数中使用它

TS:

php文件

<?php
class voucher {
 public function init($content ="", $conf){

$session_start = $conf['session_start_var']?t3lib_div::_GP($conf['session_start_var']):false;



$lang_id = ($GLOBALS['TSFE']->sys_language_uid == 0 ? "&lang=de" : "&lang=en");
 if($_GET["session_start"] == "" && $_GET["tx"] == "" && strpos($_SERVER['HTTP_USER_AGENT'], 'Safari')){

  if($_GET["type"] == 1)
    die(header("Location:http://xx.pro/post?shop=1&s=1&referer=http://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]$lang_id"));
  elseif($_GET["type"] == 2)
    die(header("Location:http://xx.pro/post?shop=2&s=1$lang_id"));
  elseif($_GET["type"] == 3)
    die(header("Location:http://xx.pro/post?shop=3&s=1$lang_id"));
  else
    die(header("Location:http://xx.pro/post?s=1$lang_id"));

}  

 return "<iframe id='frame-one' scrolling='no' frameborder='0'  style='".($_GET["type"] == "" ? "height:1640px;" : "height:1640px;")." width:100%;' src='http://xx.pro/post/index.php?view=".$_GET["view"]."&tx=".$_GET["tx"]."&st=".$_GET["st"]."&amt=".$_GET["amt"]."&type=".$_GET["type"]."$lang_id' ></iframe>";
 }
}
?>

我认为您分配的GP是错误的,请这样尝试:

includeLibs.voucher = fileadmin/php/shop_init.php
lib.phpscript = USER
lib.phpscript.userFunc = voucher->init
lib.phpscript.userFunc.session_start_var = TEXT
lib.phpscript.userFunc.session_start_var.data = GP:session_start

所以,又是你。您仍然试图通过一些漏洞将php代码猛击到TYPO3中,这是一种早就应该被删除的史前技术。不管所有缓存和任何安全措施输入错误,都要用双脚将它踩在那里。此实际的普通代码可通过跨站点脚本攻击加以利用。只要学习如何编写一个实际的扩展,这并不难。你到底在那里干什么。捕获所有请求并重定向它们,有些是基于语言的?伙计。TYPO3内置了多语言功能。
includeLibs.voucher = fileadmin/php/shop_init.php
lib.phpscript = USER
lib.phpscript.userFunc = voucher->init
lib.phpscript.userFunc.session_start_var = TEXT
lib.phpscript.userFunc.session_start_var.data = GP:session_start