GP变种的Typoscript问题?

Siv*_*iva 0 typo3 typoscript typo3-6.2.x

我想使用typoscript执行查询.我的疑问是

SELECT * FROM TABLE where sld like '{GP:SID}'.我想在单/双引号内扭曲SID变量.尝试下面的脚本,但没有为我工作.

lib.products = CONTENT
lib.products {
  table = TABLE
  select {
    pidInList = 26506
      orderBy = name
      where = sid like '{GP:SID}'
   }
   renderObj = COA
   renderObj {
   10 = COA
     10 {
     10 = TEXT
     10.dataWrap ={field:name}[\n]
    }
  }
Run Code Online (Sandbox Code Playgroud)

}

能帮到我吗?

Vik*_*kyi 6

你的代码是不安全的!不要在生产中使用它.

你应该做的是使用TS查询标记,它在后台使用预处理语句.

lib.products = CONTENT
lib.products {
  table = TABLE
  select {
    pidInList = 26506
      orderBy = name
      where = sid like '###sid###'
      markers {
        sid.data = GP:SID
      }
   }
   renderObj = COA
   ...
}
Run Code Online (Sandbox Code Playgroud)

此外,如果你想使用LIKE,你需要%符号才能使它工作,否则它与'equals'相同,但速度较慢.但是,我不确定,如果GP:SID在字符串的开头或结尾包含%符号会发生什么.