Re: [WebDNA] SWITCH/CASE or SHOWIF

This WebDNA talk-list message is from

2008


It keeps the original formatting.
numero = 101489
interpreted = N
texte = On Thu, 20 Nov 2008 14:53:13 -0500 Ki Song wrote: > We have about a 100 different brands at our store. > Some brands have "static" brand pages (brand/index.html) while others h= ave "dynamic" brand pages=20 >(dynamic.tpl?brand=3Dsomebrand). >=20 > 1. To go through 100 different choices, is a switch/case more efficient= or 100 showif statements=20 >more efficient? My instict is that switch/case would be faster since it seems to be a "si= ngle" operation vs 100=20 [showif] operations, but it is untested and based on nothing but my own b= uest guess. Try a test similar to these and wrap [elapsedtime] around them or compare= the start [time] to the=20 end [time]: [text]x=3D[math]ceil([RANDOM format=3Dfloat]*(100))[/math][/text] [Switch value=3D[x]] [loop start=3D1&end=3D100] [Case value=3D[index]]The value of x is [x][/Case] [/loop] [Default] [!]--The "default" case is probably not needed here since one of t= hese cases will *always*=20 be true, but hey, I still end my [search]es w/ [/search] --[/!] [/Default] [/Switch] ------------ [text]x=3D[math]ceil([RANDOM format=3Dfloat]*(100))[/math][/text] [loop start=3D1&end=3D100] [showif [x]=3D[index]]The value of x is [x][/showif] [/loop] I'd be curious to see what the results are. > 2. In the final generated HTML code, when 100 SHOWIF statements are pro= cessed, but only 1 is=20 >actually shown, the other 99 SHOWIF statements create line breaks. Is th= ere a way to prevent the=20 >line breaks from showing up if a showif does not evaluate to true? I got this one from someone on the list: Wrap all "line-breaky" code like this: [getchars start=3D1&end=3D&trim=3Dboth] [grep search=3D[%0D%0A][%0D%0A%09]*&replace=3D%0D] ... your line-breaky code goes here ... [/grep] [/getchars] >=20 > 3. Does a SWITCH/CASE statement create line breaks for all the cases th= at evaluate to false? Dunno, but if so, wrap like above. -Dan Associated Messages, from the most recent to the oldest:

    
  1. Re: [WebDNA] SWITCH/CASE or SHOWIF (Ki Song 2008)
  2. Re: [WebDNA] SWITCH/CASE or SHOWIF ("Dan Strong" 2008)
  3. Re: [WebDNA] SWITCH/CASE or SHOWIF (Toby Cox 2008)
  4. Re: [WebDNA] SWITCH/CASE or SHOWIF (Govinda 2008)
  5. Re: [WebDNA] SWITCH/CASE or SHOWIF ("Dan Strong" 2008)
  6. Re: [WebDNA] SWITCH/CASE or SHOWIF (Ki Song 2008)
  7. Re: [WebDNA] SWITCH/CASE or SHOWIF (Govinda 2008)
  8. [WebDNA] SWITCH/CASE or SHOWIF (Ki Song 2008)
On Thu, 20 Nov 2008 14:53:13 -0500 Ki Song wrote: > We have about a 100 different brands at our store. > Some brands have "static" brand pages (brand/index.html) while others h= ave "dynamic" brand pages=20 >(dynamic.tpl?brand=3Dsomebrand). >=20 > 1. To go through 100 different choices, is a switch/case more efficient= or 100 showif statements=20 >more efficient? My instict is that switch/case would be faster since it seems to be a "si= ngle" operation vs 100=20 [showif] operations, but it is untested and based on nothing but my own b= uest guess. Try a test similar to these and wrap [elapsedtime] around them or compare= the start [time] to the=20 end [time]: [text]x=3D[math]ceil([RANDOM format=3Dfloat]*(100))[/math][/text] [Switch value=3D[x]] [loop start=3D1&end=3D100] [Case value=3D[index]]The value of x is [x][/Case] [/loop] [Default] [!]--The "default" case is probably not needed here since one of t= hese cases will *always*=20 be true, but hey, I still end my [search]es w/ [/search] --[/!] [/Default] [/Switch] ------------ [text]x=3D[math]ceil([RANDOM format=3Dfloat]*(100))[/math][/text] [loop start=3D1&end=3D100] [showif [x]=3D[index]]The value of x is [x][/showif] [/loop] I'd be curious to see what the results are. > 2. In the final generated HTML code, when 100 SHOWIF statements are pro= cessed, but only 1 is=20 >actually shown, the other 99 SHOWIF statements create line breaks. Is th= ere a way to prevent the=20 >line breaks from showing up if a showif does not evaluate to true? I got this one from someone on the list: Wrap all "line-breaky" code like this: [getchars start=3D1&end=3D&trim=3Dboth] [grep search=3D[%0D%0A][%0D%0A%09]*&replace=3D%0D] ... your line-breaky code goes here ... [/grep] [/getchars] >=20 > 3. Does a SWITCH/CASE statement create line breaks for all the cases th= at evaluate to false? Dunno, but if so, wrap like above. -Dan "Dan Strong"

DOWNLOAD WEBDNA NOW!

Top Articles:

Talk List

The WebDNA community talk-list is the best place to get some help: several hundred extremely proficient programmers with an excellent knowledge of WebDNA and an excellent spirit will deliver all the tips and tricks you can imagine...

Related Readings:

[WebDNA] client request (2010) newcart (1997) [WebDNA] fastcgi 7+ & [cart]? (2010) RAM variables (1997) Multiple database search (2000) Return records from another (1997) MATH TIME (1997) Template Cache problem, bombing WebSTAR problem (2000) BUG REPORT: numeric ge, le, gr & ls comparisons don't work ... (1999) form validator issue (2005) [WebDNA] lists opinion (2009) [SameAsShipping] (2005) [Sum] function? (1997) SAVECART (1997) iis 4.0 (1997) [WebDNA] Wishlist: ignore whitespace in database changes (2016) PCS Emailer's role ? (1997) attachment (2000) Web Developer Product Awards (1997) [WebDNA] triggers.db "next execute" fails to update (2012)