Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/368.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP/XSLT同一quertystring的多个实例_Php_Javascript_Xml_Xslt_Symphony Cms - Fatal编程技术网

PHP/XSLT同一quertystring的多个实例

PHP/XSLT同一quertystring的多个实例,php,javascript,xml,xslt,symphony-cms,Php,Javascript,Xml,Xslt,Symphony Cms,我的后端接受逗号分隔的id值“11,12,13”。在前端,我有一个允许多个选择的检查列表,并发布以下内容 someurl.com?id=11&id=12&id=13 如何对ID的多个实例使用$\u GET,并将其格式化为逗号分隔的字符串?或者,是否有更好的方法强制检查列表以我想要的格式提交表单 现在回到前端,我使用XSLT来确定是否检查一个项目以恢复其先前的状态 <xsl:choose> <xsl:when test="$id = *">

我的后端接受逗号分隔的id值“11,12,13”。在前端,我有一个允许多个选择的检查列表,并发布以下内容

someurl.com?id=11&id=12&id=13

如何对ID的多个实例使用$\u GET,并将其格式化为逗号分隔的字符串?或者,是否有更好的方法强制检查列表以我想要的格式提交表单

现在回到前端,我使用XSLT来确定是否检查一个项目以恢复其先前的状态

    <xsl:choose>
    <xsl:when test="$id = *">
        <option selected="selected">
            <xsl:value-of select="*"/>
        </option>
    </xsl:when>
    <xsl:otherwise>
        <option>
            <xsl:value-of select="*"/>
        </option>
    </xsl:otherwise>
</xsl:choose>

如果只选择了一个选项,但是选择了多个选项,那么您将如何处理url中该$id值的多个实例呢


非常感谢任何帮助和解决方案。

我不怎么使用php,但我相信您希望
?id[]=11&id[]=12&id[]=13
id
参数中获得数组
[11,12,13]

恐怕xslt问题的描述过于简短,我无法理解。首先,我不明白您为什么要首先在前端设置
selected
属性。那么,我建议干的:

<option>
  <xsl:if test='...'>
    <xsl:attribute name='selected' value='"selected"'/>
  </xsl:if>
  <xsl:value-of select='*'/>
</option>

至于测试本身,当以服务器理解的方式选择多个元素时,您从服务器得到了什么?一个简单的

<xsl:if test="contains(concat(',', $ids, ','), concat(',', *, ','))">

工作