Solved

export query result to excel spreadsheet

Posted on 2014-04-24
5
335 Views
Last Modified: 2014-04-25
Hi,

Please tell me how can I have the query result sent to an excel spreadsheet.

so, when the user click on the button the data should go to the spreadsheet.

Thanks,
Lulu

button


      
<CFIF isDefined("QSearchResult") and #QSearchResult.RecordCount# gt 0>

<cfparam name="url.page" default="1">
<cfset page_links_shown = 5>
<cfset records_per_page = 10>

<cfset total_pages = ceiling(QSearchResult.RecordCount / records_per_page)>

<cfif val(url.page) lt 1>
  <cfset url.page = 1>
<cfelseif val(url.page) gt total_pages>
  <cfset url.page = total_pages>
</cfif>
<cfset start_record = ((url.page - 1) * records_per_page ) + 1>

<table style="width:100%;border: solid 1px #dddddd;" id="ResultListTbl">
<tr style="background-color:#d0d2d3;font-weight:bold;">
 <th style="width:100px;padding-left:5px;">Issue ID <img id="SortByIssueID" style="cursor:hand;" src="images/ArrowDowndefault.png" alt="Sort by issue ID" onclick="FlipImage(1);" /></th>
 <th style="width:150px;">Ticket# <img id="SortByTicketNumber" style="cursor:hand;" src="images/ArrowDowndefault.png" alt="Sort by ticket number" onclick="FlipImage(2);" /></th>
 <th style="width:210px;">Category <img id="SortByCategory" style="cursor:hand;" src="images/ArrowDowndefault.png" alt="Sort by category" onclick="FlipImage(3);" /></th>
 <th style="width:350px;">Title <img id="SortByTitle" style="cursor:hand;" src="images/ArrowDowndefault.png" alt="Sort by title" onclick="FlipImage(4);" /></th>
 <th style="width:80px;">Status <img id="SortByStatus" style="cursor:hand;" src="images/ArrowDowndefault.png" alt="Sort by status" onclick="FlipImage(5);" /></th>
 <th style="width:110px;">Date <img id="SortByDate" style="cursor:hand;" src="images/ArrowDowndefault.png" alt="Sort by date" onclick="FlipImage(6);" /></th>
  <th style="width:110px;">&nbsp;</th>
</tr>
<cfset previousParentIssueID = QSearchResult.ParentIssueID> 
<cfoutput query="QSearchResult" startrow="#start_record#" maxrows="#records_per_page#">

 <cfif val(QSearchResult.ParentIssueID)> 
 <!-- //Child Row -->
 <tr class="bg2row">
   <td style="padding-left:20px;">#QSearchResult.ParentIssueID#(#QSearchResult.issueID#)</td>
 <td>#QSearchResult.ticketNumber# <cfif #QSearchResult.TicketNumberTxt# neq ""> - #QSearchResult.TicketNumberTxt#</cfif></td>
 <td>#QSearchResult.Category#</td>
 <td>#QSearchResult.TitleOfIssue#</td>
 <td>#QSearchResult.Status#</td>
  <td>#DateFormat(QSearchResult.DateCreated, "m/d/yyyy")#</td>
    <td><a href="LogEntry.cfm?TechType=#QSearchResult.CategoryTypeID#&ID=#QSearchResult.issueID#"><img src="images/edit.png" alt="Edit Log" /></a>
  <!---  <a href="ViewLogEntry.cfm?filter=1&TechType=#QSearchResult.CategoryTypeID#&ID=#QSearchResult.issueID#"> --->
    <img src="images/view.png" alt="View Log" onClick="ViewDialog(900,600,#QSearchResult.CategoryTypeID#,#QSearchResult.issueID#);" />
   <!--- </a> --->

    </td>
    </tr>  
 <cfelse>
 <tr class="bgrow">
	 <td style="font-weight:bold;padding-left:5px;">#QSearchResult.issueID#</td>
	 <td style="font-weight:bold;">#QSearchResult.TicketNumber# <cfif #QSearchResult.TicketNumberTxt# neq ""> - #QSearchResult.TicketNumberTxt#</cfif></td>
	 <td style="font-weight:bold;">#QSearchResult.Category#</td>
	 <td style="font-weight:bold;">#QSearchResult.TitleOfIssue#</td>
	 <td style="font-weight:bold;">#QSearchResult.Status#</td>
	  <td style="font-weight:bold;">#DateFormat(QSearchResult.DateCreated, "m/d/yyyy")#</td>
	  <td style="color:dark blue;">
      
      <a href="LogEntry.cfm?TechType=#QSearchResult.CategoryTypeID#&ID=#QSearchResult.issueID#"><img src="images/edit.png" alt="Edit Log" /></a>
     <!--- <a href="ViewLogEntry.cfm?filter=1&TechType=#QSearchResult.CategoryTypeID#&ID=#QSearchResult.issueID#"> --->
	  <img src="images/view.png" alt="View Log" onClick="ViewDialog(900,600,#QSearchResult.CategoryTypeID#,#QSearchResult.issueID#);" />
	  <!--- </a> --->
       <cfif not val(previousParentIssueID)>
      <a href="LogEntry.cfm?TechType=#QSearchResult.CategoryTypeID#&IDP=#QSearchResult.issueID#"><img src="images/add.png" alt="Add Log" /></a>
      </cfif>
	  </td>
  </tr>
</cfif>
</cfoutput>

</table> 

Open in new window

0
Comment
Question by:lulu50
  • 3
5 Comments
 
LVL 22

Expert Comment

by:plusone3055
Comment Utility
ive asked the very same question before Back when I was starting out with Coldfusion

here is the link to my question and the answer :)

http://www.experts-exchange.com/Programming/Languages/Scripting/Cold_Fusion_Markup_Language/Q_24450995.html
0
 
LVL 15

Accepted Solution

by:
myselfrandhawa earned 500 total points
Comment Utility
For this purpose, i prefer using the following UDF

http://cflib.org/udf/Query2Excel

Which fits in your code like this:

<cfscript>
function Query2Excel(query) {
    var InputColumnList = query.columnList;
    var Headers = query.columnList;

    var AlternateColor = "FFFFFF";
    var header = "";
    var headerLen = 0;
    var col = "";
    var colValue = "";
    var colLen = 0;
    var i = 1;
    var j = 1;
    var k = 1;
    
    var HTMLData = "";
    
    if (arrayLen(arguments) gte 2) {
        Headers = arguments[2];
    }
    if (arrayLen(arguments) gte 3) {
        InputColumnList = arguments[3];
    }

    if (arrayLen(arguments) gte 4) {
        AlternateColor = arguments[4];
    }
    if (listLen(InputColumnList) neq listLen(Headers)) {
        return "Input Column list and Header list are not of equal length";
    }
    
    HTMLData = HTMLData & "<table border=1><tr bgcolor=""C0C0C0"">";
    for (i=1;i lte ListLen(Headers);i=i+1){
        header=listGetAt(Headers,i);
        headerLen=Len(header)*10;
        HTMLData = HTMLData & "<th width=""#headerLen#""><b>#header#</b></th>";
    }
    HTMLData = HTMLData & "</tr>";
    for (j=1;j lte query.recordcount;j=j+1){
        if (j mod 2) {
            HTMLData = HTMLData & "<tr bgcolor=""FFFFFF"">";
        } else {
            HTMLData = HTMLData & "<tr bgcolor=""#alternatecolor#"">";
        }
        for (k=1;k lte ListLen(InputColumnList);k=k+1) {
            col=ListGetAt(InputColumnList,k);
            colValue=query[trim(col)][j];
            colLength=Len(colValue)*10;
            if (NOT Len(colValue)) {
                colValue="&nbsp;";
            } 
            if (isNumeric(colValue) and Len(colValue) gt 10) {
                colValue="'#colValue#";
            } 
            HTMLData = HTMLData & "<td width=""#colLength#"">#colValue#</td>";
        }
    HTMLData = HTMLData & "</tr>";
    }
    HTMLData = HTMLData & "</table>";
    
    return HTMLData;
}
</cfscript>
<cfif isDefined('form.excel')>
	<cfset getquery = Query2Excel(yourquery)>
    <cfdump var="#getquery#">
</cfif>
<form>
<input type="submit" name="excel" value="Export">
</form>
<CFIF isDefined("QSearchResult") and #QSearchResult.RecordCount# gt 0>
<cfparam name="url.page" default="1">
<cfset page_links_shown = 5>
<cfset records_per_page = 10>
<cfset total_pages = ceiling(QSearchResult.RecordCount / records_per_page)>
<cfif val(url.page) lt 1>
  <cfset url.page = 1>
  <cfelseif val(url.page) gt total_pages>
  <cfset url.page = total_pages>
</cfif>
<cfset start_record = ((url.page - 1) * records_per_page ) + 1>
<table style="width:100%;border: solid 1px #dddddd;" id="ResultListTbl">
  <tr style="background-color:#d0d2d3;font-weight:bold;">
    <th style="width:100px;padding-left:5px;">Issue ID <img id="SortByIssueID" style="cursor:hand;" src="images/ArrowDowndefault.png" alt="Sort by issue ID" onclick="FlipImage(1);" /></th>
    <th style="width:150px;">Ticket# <img id="SortByTicketNumber" style="cursor:hand;" src="images/ArrowDowndefault.png" alt="Sort by ticket number" onclick="FlipImage(2);" /></th>
    <th style="width:210px;">Category <img id="SortByCategory" style="cursor:hand;" src="images/ArrowDowndefault.png" alt="Sort by category" onclick="FlipImage(3);" /></th>
    <th style="width:350px;">Title <img id="SortByTitle" style="cursor:hand;" src="images/ArrowDowndefault.png" alt="Sort by title" onclick="FlipImage(4);" /></th>
    <th style="width:80px;">Status <img id="SortByStatus" style="cursor:hand;" src="images/ArrowDowndefault.png" alt="Sort by status" onclick="FlipImage(5);" /></th>
    <th style="width:110px;">Date <img id="SortByDate" style="cursor:hand;" src="images/ArrowDowndefault.png" alt="Sort by date" onclick="FlipImage(6);" /></th>
    <th style="width:110px;">&nbsp;</th>
  </tr>
  <cfset previousParentIssueID = QSearchResult.ParentIssueID>
  <cfoutput query="QSearchResult" startrow="#start_record#" maxrows="#records_per_page#">
    <cfif val(QSearchResult.ParentIssueID)>
      <!-- //Child Row -->
      <tr class="bg2row">
        <td style="padding-left:20px;">#QSearchResult.ParentIssueID#(#QSearchResult.issueID#)</td>
        <td>#QSearchResult.ticketNumber#
          <cfif #QSearchResult.TicketNumberTxt# neq "">
            - #QSearchResult.TicketNumberTxt#
          </cfif></td>
        <td>#QSearchResult.Category#</td>
        <td>#QSearchResult.TitleOfIssue#</td>
        <td>#QSearchResult.Status#</td>
        <td>#DateFormat(QSearchResult.DateCreated, "m/d/yyyy")#</td>
        <td><a href="LogEntry.cfm?TechType=#QSearchResult.CategoryTypeID#&ID=#QSearchResult.issueID#"><img src="images/edit.png" alt="Edit Log" /></a> 
          <img src="images/view.png" alt="View Log" onClick="ViewDialog(900,600,#QSearchResult.CategoryTypeID#,#QSearchResult.issueID#);" /> 
          </td>
      </tr>
      <cfelse>
      <tr class="bgrow">
        <td style="font-weight:bold;padding-left:5px;">#QSearchResult.issueID#</td>
        <td style="font-weight:bold;">#QSearchResult.TicketNumber#
          <cfif #QSearchResult.TicketNumberTxt# neq "">
            - #QSearchResult.TicketNumberTxt#
          </cfif></td>
        <td style="font-weight:bold;">#QSearchResult.Category#</td>
        <td style="font-weight:bold;">#QSearchResult.TitleOfIssue#</td>
        <td style="font-weight:bold;">#QSearchResult.Status#</td>
        <td style="font-weight:bold;">#DateFormat(QSearchResult.DateCreated, "m/d/yyyy")#</td>
        <td style="color:dark blue;"><a href="LogEntry.cfm?TechType=#QSearchResult.CategoryTypeID#&ID=#QSearchResult.issueID#"><img src="images/edit.png" alt="Edit Log" /></a> 
          <img src="images/view.png" alt="View Log" onClick="ViewDialog(900,600,#QSearchResult.CategoryTypeID#,#QSearchResult.issueID#);" /> 
          <cfif not val(previousParentIssueID)>
            <a href="LogEntry.cfm?TechType=#QSearchResult.CategoryTypeID#&IDP=#QSearchResult.issueID#"><img src="images/add.png" alt="Add Log" /></a>
          </cfif></td>
      </tr>
    </cfif>
  </cfoutput>
</table>

Open in new window



above code can be placed in application.cfc and be reusable whereever required
Another possible way is to use the cfspreadsheet tag if you are on coldfusion 9+

Sample for this:


http://www.raymondcamden.com/index.cfm/2011/6/1/ColdFusion-Sample--Create-an-Excel-File

also you should check the question by the above expert, that is also a solution.

So there are many solutions to the one you have, you can even use custom tags for this..
0
 

Author Comment

by:lulu50
Comment Utility
hmm,

I am not sure what I'm doing wrong, the data is not getting exported to excel.

this is my all my code on that page.

data

 <cfquery name = "QSearchResultCriteria"  datasource='#strDSN#' username='#strUID#' password='#strPWD#' result="rs">
  SELECT distinct  L.IssueID
		 , L.ParentIssueID
   FROM LogEntry L
      LEFT JOIN IssueStatus I on I.StatusID = L.StatusID
      LEFT JOIN CategoryType C on C.CategoryTypeID = L.CategoryTypeID
      LEFT JOIN TicketNumber T on T.TicketNumberID = L.TicketNumberID
      LEFT JOIN SelectedDepartment SD on SD.IssueID = L.IssueID 
      LEFT JOIN DepartmentImpacted DI on DI.DepartmentImpactedID = SD.DepartmentImpactedID 
   where 1 = 1
   
    <CFIF (IsDefined("Cookie.CookieDateFrom") && #Cookie.CookieDateFrom# neq "" )  && (IsDefined("Cookie.CookieGetDateTo") && #Cookie.CookieGetDateTo# neq "" )   >
    	AND (L.DateIdentified >= '#Trim(DateFormat(Cookie.CookieDateFrom, "mm/dd/yyyy"))#' and L.DateIdentified <= '#Trim(DateFormat(Cookie.CookieGetDateTo, "mm/dd/yyyy"))#')
        

	</CFIF>
    
    <CFIF IsDefined("Cookie.CookieStatus") && #Trim(Cookie.CookieStatus)# neq "1">
       AND (L.StatusID = #Trim(Cookie.CookieStatus)#)
	</CFIF>

   <!---- add all your where clause filters here below ---->
   <cfif not IsDefined("url.ID") && (IsDefined("Cookie.CookieSearchBy") && IsDefined("Cookie.CookieSearchField")) && (#Cookie.CookieSearchField# neq "" )>
   
	 <cfswitch expression="#Trim(Cookie.CookieSearchBy)#"> 
     <cfcase value="1"> 
  			and ((DI.Department like '%#Cookie.CookieSearchField#%')
            <cfif (not isdefined("url.ID") && isNumeric(#trim(Cookie.CookieSearchField)#))>
            or (L.IssueID = #trim(CookieSearchField)# or L.ParentIssueID = #trim(CookieSearchField)#) 
            </cfif>
           or (T.TicketNumber like '%#Cookie.CookieSearchField#%' or L.TicketNumberTxt like '%#Cookie.CookieSearchField#%')
            <cfif isNumeric(#trim(Cookie.CookieSearchField)#)>
            or (L.UserID LIKE '%#Cookie.CookieSearchField#%') 
            </cfif>
            or (L.TitleOfIssue LIKE '%#Cookie.CookieSearchField#%') 
            or (C.Category LIKE '#Cookie.CookieSearchField#%') )
    </cfcase> 
        <cfcase value="2"> 
  			AND (DI.Department like '%#Cookie.CookieSearchField#%')
    </cfcase> 
    <cfcase value="4"> 
            	AND (L.IssueID = #trim(CookieSearchField)# or L.ParentIssueID = #trim(CookieSearchField)#) 
    </cfcase> 
    <cfcase value="6"> 
      		AND (T.TicketNumber like '%#Cookie.CookieSearchField#%' or L.TicketNumberTxt like '%#Cookie.CookieSearchField#%')
    </cfcase> 
    <cfcase value="8"> 
    		AND (L.UserID LIKE '%#Cookie.CookieSearchField#%') 
    </cfcase> 
        <cfcase value="9"> 
    		AND (L.TitleOfIssue LIKE '%#Cookie.CookieSearchField#%') 
    </cfcase> 
        <cfcase value="10"> 
    		AND (C.Category LIKE '#Cookie.CookieSearchField#%') 
    </cfcase> 
	    <cfdefaultcase> 
	        
	    </cfdefaultcase> 
	</cfswitch> 
    <cfelseif IsDefined("url.ID") && #url.ID# neq "">
    		AND L.IssueID = #url.ID# or ParentIssueID = #url.ID#
   </cfif>

 </cfquery>

<!---<cfdump var="#QSearchResultCriteria#" /> 
<cfoutput>SQL: #rs.SQL#</cfoutput>  ---> 

<cfset FoundIssueIDs = "">

<cfloop index="kk" list="#valueList(QSearchResultCriteria.IssueID)#,#valueList(QSearchResultCriteria.ParentIssueID)#">
 <cfif listFind(FoundIssueIDs,kk) eq 0> 
     <cfset FoundIssueIDs = listAppend(FoundIssueIDs,kk)>
 </cfif> 
</cfloop> 


<!---<cfset FoundIssueIDs = valueList(QSearchResultCriteria.IssueID)>
<cfset FoundIssueIDs = listAppend(FoundIssueIDs, QSearchResultCriteria.ParentIssueID)> --->

 <cfquery name = "QSearchResult"  datasource='#strDSN#' username='#strUID#' password='#strPWD#' result="r">
  SELECT case when L.ParentIssueID is null then L.IssueId
         else L.ParentIssueID
		 end  as TopIssueID
		 , L.IssueID
		 , L.ParentIssueID
		 , T.TicketNumber
		 , L.TitleOfIssue
		 , I.Status
		 , L.DateCreated
         , L.CategoryTypeID
         , C.Category
         , L.TicketNumberTxt
   FROM LogEntry L
     LEFT JOIN IssueStatus I on I.StatusID = L.StatusID
     LEFT JOIN CategoryType C on C.CategoryTypeID = L.CategoryTypeID
     LEFT JOIN TicketNumber T on T.TicketNumberID = L.TicketNumberID
  <cfif len(FoundIssueIDs) eq 0 >
   where 1 = 2 
 <!---  <cfelseif IsDefined("url.ID") && #url.ID# neq "">
    where L.IssueID in  (#FoundIssueIDs#) and ParentIssueID = #url.ID# --->
  <cfelse>
   where L.IssueID in  (#FoundIssueIDs#)
  </cfif>

  
<cfif isdefined("Cookie.TempArrow")>
<cfswitch expression="#Trim(Cookie.TempArrow)#"> 
     <cfcase value="1"> 
  			 order by 1 asc, case when L.parentIssueID is null then 1 else 2 end 
    </cfcase> 
    <cfcase value="10"> 
  			 order by 1 desc, case when L.parentIssueID is null then 1 else 2 end 
    </cfcase> 
    <cfcase value="2"> 
      		 order by TicketNumber asc
    </cfcase> 
    <cfcase value="20"> 
      		order by TicketNumber desc
    </cfcase> 
    <cfcase value="3"> 
    		order by Category asc
    </cfcase> 
        <cfcase value="30"> 
    		order by Category desc
    </cfcase> 
        <cfcase value="4"> 
    		order by TitleOfIssue asc
    </cfcase> 
            <cfcase value="40"> 
    		order by TitleOfIssue desc
    </cfcase> 
           <cfcase value="5"> 
    		order by Status asc
    </cfcase> 
          <cfcase value="50"> 
    		order by Status desc
    </cfcase> 
     <cfcase value="6"> 
    		order by DateCreated asc
    </cfcase> 
        <cfcase value="60"> 
    		order by DateCreated desc
    </cfcase> 
	    <cfdefaultcase> 
	       order by 1 desc, case when L.parentIssueID is null then 1 else 2 end 
	    </cfdefaultcase> 
	</cfswitch> 
<cfelse>
  order by 1 desc, case when L.parentIssueID is null then 1 else 2 end 
</cfif>
</cfquery>

<!---<cfdump var="#QSearchResult#" /> 
<cfoutput>SQL: #r.SQL#</cfoutput>   --->



<cfscript>
function Query2Excel(query) {
    var InputColumnList = query.columnList;
    var Headers = query.columnList;

    var AlternateColor = "FFFFFF";
    var header = "";
    var headerLen = 0;
    var col = "";
    var colValue = "";
    var colLen = 0;
    var i = 1;
    var j = 1;
    var k = 1;
    
    var HTMLData = "";
    
    if (arrayLen(arguments) gte 2) {
        Headers = arguments[2];
    }
    if (arrayLen(arguments) gte 3) {
        InputColumnList = arguments[3];
    }

    if (arrayLen(arguments) gte 4) {
        AlternateColor = arguments[4];
    }
    if (listLen(InputColumnList) neq listLen(Headers)) {
        return "Input Column list and Header list are not of equal length";
    }
    
    HTMLData = HTMLData & "<table border=1><tr bgcolor=""C0C0C0"">";
    for (i=1;i lte ListLen(Headers);i=i+1){
        header=listGetAt(Headers,i);
        headerLen=Len(header)*10;
        HTMLData = HTMLData & "<th width=""#headerLen#""><b>#header#</b></th>";
    }
    HTMLData = HTMLData & "</tr>";
    for (j=1;j lte query.recordcount;j=j+1){
        if (j mod 2) {
            HTMLData = HTMLData & "<tr bgcolor=""FFFFFF"">";
        } else {
            HTMLData = HTMLData & "<tr bgcolor=""#alternatecolor#"">";
        }
        for (k=1;k lte ListLen(InputColumnList);k=k+1) {
            col=ListGetAt(InputColumnList,k);
            colValue=query[trim(col)][j];
            colLength=Len(colValue)*10;
            if (NOT Len(colValue)) {
                colValue="&nbsp;";
            } 
            if (isNumeric(colValue) and Len(colValue) gt 10) {
                colValue="'#colValue#";
            } 
            HTMLData = HTMLData & "<td width=""#colLength#"">#colValue#</td>";
        }
    HTMLData = HTMLData & "</tr>";
    }
    HTMLData = HTMLData & "</table>";
    
    return HTMLData;
}
</cfscript>
<cfif isDefined('form.excel')>
	<cfset getquery = Query2Excel(yourquery)>
    <cfdump var="#getquery#">
</cfif>

<CFIF isDefined("QSearchResult") and #QSearchResult.RecordCount# gt 0>

	<table style="width:100%;border: solid 1px #dddddd;" id="ResultListTbl">
  	<tr style="background-color:#d0d2d3;font-weight:bold;">
    <th style="width:100px;padding-left:5px;">Issue ID    </th>
    <th style="width:150px;">Ticket#    </th>
    <th style="width:210px;">Category</th>
    <th style="width:350px;">Title    </th>
    <th style="width:80px;">Status    </th>
    <th style="width:110px;">Date</th>
    </tr>
  	<cfset previousParentIssueID = QSearchResult.ParentIssueID>
 	 <cfoutput query="QSearchResult">
<cfif val(QSearchResult.ParentIssueID)>
      <!-- //Child Row -->
      <tr class="bg2row">
        <td style="padding-left:20px;">#QSearchResult.ParentIssueID#(#QSearchResult.issueID#)</td>
        <td>#QSearchResult.ticketNumber#
          <cfif #QSearchResult.TicketNumberTxt# neq "">
            - #QSearchResult.TicketNumberTxt#
          </cfif></td>
        <td>#QSearchResult.Category#</td>
        <td>#QSearchResult.TitleOfIssue#</td>
        <td>#QSearchResult.Status#</td>
        <td>#DateFormat(QSearchResult.DateCreated, "m/d/yyyy")#</td>
        </tr>
      <cfelse>
      <tr class="bgrow">
        <td style="font-weight:bold;padding-left:5px;">#QSearchResult.issueID#</td>
        <td style="font-weight:bold;">#QSearchResult.TicketNumber#
          <cfif #QSearchResult.TicketNumberTxt# neq "">
            - #QSearchResult.TicketNumberTxt#
          </cfif></td>
        <td style="font-weight:bold;">#QSearchResult.Category#</td>
        <td style="font-weight:bold;">#QSearchResult.TitleOfIssue#</td>
        <td style="font-weight:bold;">#QSearchResult.Status#</td>
        <td style="font-weight:bold;">#DateFormat(QSearchResult.DateCreated, "m/d/yyyy")#</td>
        </tr>
    </cfif>
  </cfoutput>
</table>
</CFIF>

Open in new window

0
 

Author Comment

by:lulu50
Comment Utility
I got it thanks
0
 

Author Closing Comment

by:lulu50
Comment Utility
Thanks,
0

Featured Post

How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

Join & Write a Comment

Hi, Even though I have created this Tutorial on My personal Blog, Some people might not able to find my website, So here i am posting it again Today, from the topic it is very clear that i will be showing you here the very basic usage of how we …
This is an updated version of a post made on my blog over 3 years ago. It is unfortunately, still very relevant as we continue to see both SQLi (SQL injection) and XSS (cross site scripting) attacks hitting some of the most recognizable website and …
In this tutorial you'll learn about bandwidth monitoring with flows and packet sniffing with our network monitoring solution PRTG Network Monitor (https://www.paessler.com/prtg). If you're interested in additional methods for monitoring bandwidt…
This video demonstrates how to create an example email signature rule for a department in a company using CodeTwo Exchange Rules. The signature will be inserted beneath users' latest emails in conversations and will be displayed in users' Sent Items…

744 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

18 Experts available now in Live!

Get 1:1 Help Now