Я использую этот код для отображения списка платформ. Если при входе на страницу был указан ID платформы, я хотел бы создать список жанров под указанной платформой.
- browse.cfm был доступен по ссылке, которая указала ID платформы 1
- browse.cfm перечислит все доступные платформы
browse.cfm теперь будет перечислять все доступные жанры с ID платформы 1.
<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>