Create an HTML table: Difference between revisions
Content added Content deleted
Drkameleon (talk | contribs) (obsolete) |
m (→{{header|Phix}}: added syntax colouring the hard way, phix/basics) |
||
Line 3,859: | Line 3,859: | ||
=={{header|Phix}}== |
=={{header|Phix}}== |
||
{{libheader|Phix/basics}} |
|||
===plain text approach=== |
===plain text approach=== |
||
Note that I'm using "ta"&"ble" instead of "table" simply to avoid confusing rosettacode. |
|||
<lang Phix>puts(1,"<table border=2>\n") |
|||
<!--<lang Phix>--> |
|||
puts(1," <tr><th></th>") |
|||
<span style="color: #7060A8;">puts<span style="color: #0000FF;">(<span style="color: #000000;">1<span style="color: #0000FF;">,<span style="color: #008000;">"<ta"<span style="color: #0000FF;">&<span style="color: #008000;">"ble border=2>\n"<span style="color: #0000FF;">)</span> |
|||
for j=1 to 3 do |
|||
<span style="color: #7060A8;">puts<span style="color: #0000FF;">(<span style="color: #000000;">1<span style="color: #0000FF;">,<span style="color: #008000;">" <tr><th></th>"<span style="color: #0000FF;">)</span> |
|||
printf(1,"<th>%s</th>",'W'+j) |
|||
<span style="color: #008080;">for</span> <span style="color: #000000;">j<span style="color: #0000FF;">=<span style="color: #000000;">1</span> <span style="color: #008080;">to</span> <span style="color: #000000;">3</span> <span style="color: #008080;">do</span> |
|||
end for |
|||
<span style="color: #7060A8;">printf<span style="color: #0000FF;">(<span style="color: #000000;">1<span style="color: #0000FF;">,<span style="color: #008000;">"<th>%s</th>"<span style="color: #0000FF;">,<span style="color: #008000;">'W'<span style="color: #0000FF;">+<span style="color: #000000;">j<span style="color: #0000FF;">)</span> |
|||
puts(1,"</tr>\n") |
|||
<span style="color: #008080;">end</span> <span style="color: #008080;">for</span> |
|||
for i=1 to 3 do |
|||
<span style="color: #7060A8;">puts<span style="color: #0000FF;">(<span style="color: #000000;">1<span style="color: #0000FF;">,<span style="color: #008000;">"</tr>\n"<span style="color: #0000FF;">)</span> |
|||
printf(1," <tr><td>%d</td>",i) |
|||
<span style="color: #008080;">for</span> <span style="color: #000000;">i<span style="color: #0000FF;">=<span style="color: #000000;">1</span> <span style="color: #008080;">to</span> <span style="color: #000000;">3</span> <span style="color: #008080;">do</span> |
|||
for j=1 to 3 do |
|||
<span style="color: #7060A8;">printf<span style="color: #0000FF;">(<span style="color: #000000;">1<span style="color: #0000FF;">,<span style="color: #008000;">" <tr><td>%d</td>"<span style="color: #0000FF;">,<span style="color: #000000;">i<span style="color: #0000FF;">)</span> |
|||
printf(1,"<td>%d</td>",rand(10000)) |
|||
<span style="color: #008080;">for</span> <span style="color: #000000;">j<span style="color: #0000FF;">=<span style="color: #000000;">1</span> <span style="color: #008080;">to</span> <span style="color: #000000;">3</span> <span style="color: #008080;">do</span> |
|||
end for |
|||
<span style="color: #7060A8;">printf<span style="color: #0000FF;">(<span style="color: #000000;">1<span style="color: #0000FF;">,<span style="color: #008000;">"<td>%d</td>"<span style="color: #0000FF;">,<span style="color: #7060A8;">rand<span style="color: #0000FF;">(<span style="color: #000000;">10000<span style="color: #0000FF;">)<span style="color: #0000FF;">)</span> |
|||
puts(1,"</tr>\n") |
|||
<span style="color: #008080;">end</span> <span style="color: #008080;">for</span> |
|||
end for |
|||
<span style="color: #7060A8;">puts<span style="color: #0000FF;">(<span style="color: #000000;">1<span style="color: #0000FF;">,<span style="color: #008000;">"</tr>\n"<span style="color: #0000FF;">)</span> |
|||
puts(1,"</table>")</lang> |
|||
<span style="color: #008080;">end</span> <span style="color: #008080;">for</span> |
|||
<span style="color: #7060A8;">puts<span style="color: #0000FF;">(<span style="color: #000000;">1<span style="color: #0000FF;">,<span style="color: #008000;">"</ta"<span style="color: #0000FF;">&<span style="color: #008000;">"ble>"<span style="color: #0000FF;">) |
|||
<!--</lang>--> |
|||
{{out}} |
{{out}} |
||
<table border=2> |
<table border=2> |
||
Line 3,893: | Line 3,896: | ||
</table></lang> |
</table></lang> |
||
===more structured=== |
===more structured=== |
||
<lang Phix> |
<!--<lang Phix>--> |
||
<span style="color: #008080;">include</span> <span style="color: #000000;">xml<span style="color: #0000FF;">.<span style="color: #000000;">e</span> |
|||
sequence contents = {} |
|||
<span style="color: #004080;">sequence</span> <span style="color: #000000;">contents</span> <span style="color: #0000FF;">=</span> <span style="color: #0000FF;">{<span style="color: #0000FF;">}</span> |
|||
for r=0 to 3 do |
|||
<span style="color: #008080;">for</span> <span style="color: #000000;">r<span style="color: #0000FF;">=<span style="color: #000000;">0</span> <span style="color: #008080;">to</span> <span style="color: #000000;">3</span> <span style="color: #008080;">do</span> |
|||
sequence rowcontent = {} |
|||
<span style="color: #004080;">sequence</span> <span style="color: #000000;">rowcontent</span> <span style="color: #0000FF;">=</span> <span style="color: #0000FF;">{<span style="color: #0000FF;">}</span> |
|||
string thtd = iff(r=0?"th":"td") |
|||
<span style="color: #004080;">string</span> <span style="color: #000000;">thtd</span> <span style="color: #0000FF;">=</span> <span style="color: #008080;">iff<span style="color: #0000FF;">(<span style="color: #000000;">r<span style="color: #0000FF;">=<span style="color: #000000;">0<span style="color: #0000FF;">?<span style="color: #008000;">"th"<span style="color: #0000FF;">:<span style="color: #008000;">"td"<span style="color: #0000FF;">)</span> |
|||
for c=0 to 3 do |
|||
<span style="color: #008080;">for</span> <span style="color: #000000;">c<span style="color: #0000FF;">=<span style="color: #000000;">0</span> <span style="color: #008080;">to</span> <span style="color: #000000;">3</span> <span style="color: #008080;">do</span> |
|||
string content = iff(r=0?"XYZ"[max(1,c)..c]: |
|||
<span style="color: #004080;">string</span> <span style="color: #000000;">content</span> <span style="color: #0000FF;">=</span> <span style="color: #008080;">iff<span style="color: #0000FF;">(<span style="color: #000000;">r<span style="color: #0000FF;">=<span style="color: #000000;">0<span style="color: #0000FF;">?<span style="color: #008000;">"XYZ"<span style="color: #0000FF;">[<span style="color: #7060A8;">max<span style="color: #0000FF;">(<span style="color: #000000;">1<span style="color: #0000FF;">,<span style="color: #000000;">c<span style="color: #0000FF;">)<span style="color: #0000FF;">..<span style="color: #000000;">c<span style="color: #0000FF;">]<span style="color: #0000FF;">:</span> |
|||
sprintf("%d",iff(c=0?r:rand(9999)))) |
|||
<span style="color: #7060A8;">sprintf<span style="color: #0000FF;">(<span style="color: #008000;">"%d"<span style="color: #0000FF;">,<span style="color: #008080;">iff<span style="color: #0000FF;">(<span style="color: #000000;">c<span style="color: #0000FF;">=<span style="color: #000000;">0<span style="color: #0000FF;">?<span style="color: #000000;">r<span style="color: #0000FF;">:<span style="color: #7060A8;">rand<span style="color: #0000FF;">(<span style="color: #000000;">9999<span style="color: #0000FF;">)<span style="color: #0000FF;">)<span style="color: #0000FF;">)<span style="color: #0000FF;">)</span> |
|||
sequence col = xml_new_element(thtd,content) |
|||
<span style="color: #004080;">sequence</span> <span style="color: #000000;">col</span> <span style="color: #0000FF;">=</span> <span style="color: #7060A8;">xml_new_element<span style="color: #0000FF;">(<span style="color: #000000;">thtd<span style="color: #0000FF;">,<span style="color: #000000;">content<span style="color: #0000FF;">)</span> |
|||
col = xml_set_attribute(col,"style","text-align:right; padding: 5px;") |
|||
<span style="color: #000000;">col</span> <span style="color: #0000FF;">=</span> <span style="color: #7060A8;">xml_set_attribute<span style="color: #0000FF;">(<span style="color: #000000;">col<span style="color: #0000FF;">,<span style="color: #008000;">"style"<span style="color: #0000FF;">,<span style="color: #008000;">"text-align:right; padding: 5px;"<span style="color: #0000FF;">)</span> |
|||
rowcontent = append(rowcontent,col) |
|||
<span style="color: #000000;">rowcontent</span> <span style="color: #0000FF;">=</span> <span style="color: #7060A8;">append<span style="color: #0000FF;">(<span style="color: #000000;">rowcontent<span style="color: #0000FF;">,<span style="color: #000000;">col<span style="color: #0000FF;">)</span> |
|||
end for |
|||
<span style="color: #008080;">end</span> <span style="color: #008080;">for</span> |
|||
sequence row = xml_new_element("tr",rowcontent) |
|||
<span style="color: #004080;">sequence</span> <span style="color: #000000;">row</span> <span style="color: #0000FF;">=</span> <span style="color: #7060A8;">xml_new_element<span style="color: #0000FF;">(<span style="color: #008000;">"tr"<span style="color: #0000FF;">,<span style="color: #000000;">rowcontent<span style="color: #0000FF;">)</span> |
|||
contents = append(contents,row) |
|||
<span style="color: #000000;">contents</span> <span style="color: #0000FF;">=</span> <span style="color: #7060A8;">append<span style="color: #0000FF;">(<span style="color: #000000;">contents<span style="color: #0000FF;">,<span style="color: #000000;">row<span style="color: #0000FF;">)</span> |
|||
end for |
|||
<span style="color: #008080;">end</span> <span style="color: #008080;">for</span> |
|||
sequence table = xml_new_element("table",contents) |
|||
<span style="color: #004080;">sequence</span> <span style="color: #000000;">table</span> <span style="color: #0000FF;">=</span> <span style="color: #7060A8;">xml_new_element<span style="color: #0000FF;">(<span style="color: #008000;">"table"<span style="color: #0000FF;">,<span style="color: #000000;">contents<span style="color: #0000FF;">)</span> |
|||
table = xml_set_attribute(table, "border", "2") |
|||
<span style="color: #000000;">table</span> <span style="color: #0000FF;">=</span> <span style="color: #7060A8;">xml_set_attribute<span style="color: #0000FF;">(<span style="color: #000000;">table<span style="color: #0000FF;">,</span> <span style="color: #008000;">"border"<span style="color: #0000FF;">,</span> <span style="color: #008000;">"2"<span style="color: #0000FF;">)</span> |
|||
sequence doc = xml_new_doc(table,"") |
|||
<span style="color: #004080;">sequence</span> <span style="color: #000000;">doc</span> <span style="color: #0000FF;">=</span> <span style="color: #7060A8;">xml_new_doc<span style="color: #0000FF;">(<span style="color: #000000;">table<span style="color: #0000FF;">,<span style="color: #008000;">""<span style="color: #0000FF;">)</span> |
|||
puts(1,xml_sprint(doc))</lang> |
|||
<span style="color: #7060A8;">puts<span style="color: #0000FF;">(<span style="color: #000000;">1<span style="color: #0000FF;">,<span style="color: #7060A8;">xml_sprint<span style="color: #0000FF;">(<span style="color: #000000;">doc<span style="color: #0000FF;">)<span style="color: #0000FF;">) |
|||
<!--</lang>--> |
|||
{{out}} |
{{out}} |
||
<table border="2"> |
<table border="2"> |