このコードを使用して、プラットフォームのリストを表示しています。ページに入るときにplatformIDが指定されている場合は、指定されたプラットフォームの下にジャンルのリストを作成したいと思います。
- ブラウズ.cfmは、1のプラットフォームIDを指定したリンクを介してアクセスされました
- ブラウズ.cfmは利用可能なすべてのプラットフォームを一覧表示します
ブラウズ.cfmは、platformID1で利用可能なすべてのジャンルを一覧表示します。
<ul> <li>Browse</li> <cfoutput query="qGetPlatforms"> <li> <a href="browse.cfm?platformID=#URLEncodedFormat(Trim(qGetPlatforms.platformID))#">#qGetPlatforms.pName#</a> <cfif URL.platformID EQ qGetPlatforms.platformID> <ul> <cfoutput query="qGetGenres"> <li><a href="browse.cfm?genreID=#URLEncodedFormat(Trim(qGetGenres.genreID))#">#qGetGenres.gName#</a></li> </cfoutput> </ul> </cfif> </li> </cfoutput> </ul>
ただし、このアプローチを使用すると、無効なネスト構成が取得されます。これを修正するにはどうすればよいですか?または、同じアイデアを実現するための別のアプローチはありますか?
ありがとう
私の質問:
<!---Get platforms--->
<cffunction
name="fGetPlatforms"
access="public"
returntype="query"
output="false"
hint="I get all the platforms">
<!---Local var--->
<cfset qGetPlatforms = "">
<!---Database query--->
<cfquery name="qGetPlatforms" datasource="#REQUEST.datasource#">
SELECT
platforms.platformID,
platforms.platformName AS pName
FROM
platforms
</cfquery>
<cfreturn qGetPlatforms>
</cffunction>
<!---Get genres--->
<cffunction
name="fGetGenres"
access="public"
returntype="query"
output="false"
hint="I get all the genres">
<!---Local var--->
<cfset qGetGenres = "">
<!---Database query--->
<cfquery name="qGetGenres" datasource="#REQUEST.datasource#">
SELECT
genres.genreID,
genres.genreName AS gName
FROM
genres
</cfquery>
<cfreturn qGetGenres>
</cffunction>