2011-07-19 89 views
0

我有一個使用XSL轉換的XML文檔。我有一個節點,重複了很多次,我把它做成單選按鈕。我想在數據庫中獲取結果,並選中/選擇相應的單選按鈕值。下面是XSL代碼:XSL支票/使用PHP(數據從MySQL數據庫)中選擇單選按鈕

<xsl:for-each select="root/a/b"> 
     <input type="radio" name="{autoincrementnumber}" value="{c[1]/@value}"/> 
    <xsl:value-of select="c[1]/ctext[@value='1']"/> 
    <input type="radio" name="{autoincrementnumber}" value="{c[1]/@value}"/> 
<xsl:value-of select="c[2]/ctext[@value='2']"/> 
     </xsl:for-each> 

有跡象表明,通過建立多節點此for-each循環,所以有上百個單選按鈕。我將如何使用PHP從數據庫中提取,並將它選擇/檢查相應的單選按鈕?

數據庫是在一列的內爆字符串:

1,2,1,1,2,1,2,1,2,1,2,1,2,1,21,....etc 

XML文檔 B = 1被選擇爲每個節點,所以會出現很多次。

... 

<a> 
<b value="1" > 
<c value="1">Yes</c> 
<c value="2">No</c> 
<c value="3">Maybe</c> 
</b> 
... 

FINAL RESULT:如果從數據庫中拉出1,則選擇單選按鈕值1。如果是2,則選擇單選按鈕2。所檢查的單選按鈕都是基於在作爲內爆的1.2.1.4.1.2.4.3數據庫值....等

+1

你應該張貼的XML文檔,以及和澄清你想選擇哪個單選按鈕。 'xsl:if'和'xsl:attribute'可能是你需要的。 – cordsen

+0

發佈了它。有任何想法嗎? – tdjfdjdj

+0

我可以選擇一個php變量嗎? – tdjfdjdj

回答

1

下面是工作示例屬性用法和討厭的XPath表達式。也許它會有所幫助。

<input type="checkbox" name="{@name}" value="true"> 
    <x:if test="translate($value, $uppercase, $smallcase)='true' or translate(@checked, $uppercase, $smallcase)='true'"> 
     <x:attribute name="checked">checked</x:attribute> 
    </x:if> 
</input> 

所有文件是在asyncode.com/xslt/index.xsl - 使用它作爲參考。

相關問題