Changeset 6 for trunk/thirds/cgic206/cgictest.c
- Timestamp:
- Aug 11, 2010, 2:51:39 PM (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/thirds/cgic206/cgictest.c
r1 r6 23 23 cgiReadEnvironment("/home/boutell/public_html/capcgi.dat"); 24 24 #endif 25 cgiHeaderContentType("text/html"); 26 fprintf(cgiOut, "<HTML><HEAD>\n"); 27 fprintf(cgiOut, "<TITLE>cgic test</TITLE></HEAD>\n"); 28 fprintf(cgiOut, "<BODY><H1>cgic test</H1>\n"); 25 dup2(cgiOut,stdout); 26 printf("Content-Type: text/html; charset=utf-8\r\nStatus: 200 OK\r\n\r\n"); 27 //cgiHeaderContentType("text/html"); 28 printf( "<HTML><HEAD>\n"); 29 printf( "<TITLE>cgic test</TITLE></HEAD>\n"); 30 printf( "<BODY><H1>cgic test</H1>\n"); 29 31 Name(); 30 32 Address(); … … 36 38 NonExButtons(); 37 39 RadioButtons(); 38 fprintf(cgiOut,"</BODY></HTML>\n");40 printf( "</BODY></HTML>\n"); 39 41 return 0; 40 42 } … … 45 47 switch (result) { 46 48 case cgiFormSuccess: 47 fprintf(cgiOut,"Name fetched, result code: cgiFormSuccess<br>\n");49 printf( "Name fetched, result code: cgiFormSuccess<br>\n"); 48 50 break; 49 51 case cgiFormTruncated: 50 fprintf(cgiOut,"Name fetched, result code: cgiFormTruncated<br>\n");52 printf( "Name fetched, result code: cgiFormTruncated<br>\n"); 51 53 break; 52 54 case cgiFormEmpty: 53 fprintf(cgiOut,"Name fetched, result code: cgiFormEmpty<br>\n");55 printf( "Name fetched, result code: cgiFormEmpty<br>\n"); 54 56 break; 55 57 case cgiFormNotFound: 56 fprintf(cgiOut,"Name fetched, result code: cgiFormNotFound<br>\n");58 printf( "Name fetched, result code: cgiFormNotFound<br>\n"); 57 59 break; 58 60 case cgiFormMemory: 59 fprintf(cgiOut,"Name fetched, result code: cgiFormMemory<br>\n");61 printf( "Name fetched, result code: cgiFormMemory<br>\n"); 60 62 break; 61 63 default: 62 fprintf(cgiOut,"Name fetched, unexpected result code: %d\n", result);64 printf( "Name fetched, unexpected result code: %d\n", result); 63 65 break; 64 66 } 65 fprintf(cgiOut,"Name: %s<BR>\n", name);67 printf( "Name: %s<BR>\n", name); 66 68 } 67 69 … … 69 71 char address[241]; 70 72 cgiFormString("address", address, 241); 71 fprintf(cgiOut,"Address: <PRE>\n%s</PRE>\n", address);73 printf( "Address: <PRE>\n%s</PRE>\n", address); 72 74 } 73 75 74 76 void Hungry() { 75 77 if (cgiFormCheckboxSingle("hungry") == cgiFormSuccess) { 76 fprintf(cgiOut,"I'm Hungry!<BR>\n");78 printf( "I'm Hungry!<BR>\n"); 77 79 } else { 78 fprintf(cgiOut,"I'm Not Hungry!<BR>\n");80 printf( "I'm Not Hungry!<BR>\n"); 79 81 } 80 82 } … … 83 85 double temperature; 84 86 cgiFormDoubleBounded("temperature", &temperature, 80.0, 120.0, 98.6); 85 fprintf(cgiOut,"My temperature is %f.<BR>\n", temperature);87 printf( "My temperature is %f.<BR>\n", temperature); 86 88 } 87 89 … … 89 91 int frogsEaten; 90 92 cgiFormInteger("frogs", &frogsEaten, 0); 91 fprintf(cgiOut,"I have eaten %d frogs.<BR>\n", frogsEaten);93 printf( "I have eaten %d frogs.<BR>\n", frogsEaten); 92 94 } 93 95 … … 101 103 int colorChoice; 102 104 cgiFormSelectSingle("colors", colors, 3, &colorChoice, 0); 103 fprintf(cgiOut,"I am: %s<BR>\n", colors[colorChoice]);105 printf( "I am: %s<BR>\n", colors[colorChoice]); 104 106 } 105 107 … … 118 120 flavorChoices, &invalid); 119 121 if (result == cgiFormNotFound) { 120 fprintf(cgiOut,"I hate ice cream.<p>\n");122 printf( "I hate ice cream.<p>\n"); 121 123 } else { 122 fprintf(cgiOut,"My favorite ice cream flavors are:\n");123 fprintf(cgiOut,"<ul>\n");124 printf( "My favorite ice cream flavors are:\n"); 125 printf( "<ul>\n"); 124 126 for (i=0; (i < 3); i++) { 125 127 if (flavorChoices[i]) { 126 fprintf(cgiOut,"<li>%s\n", flavors[i]);128 printf( "<li>%s\n", flavors[i]); 127 129 } 128 130 } 129 fprintf(cgiOut,"</ul>\n");131 printf( "</ul>\n"); 130 132 } 131 133 } … … 146 148 cgiFormRadio("age", ages, 4, &ageChoice, 0); 147 149 148 fprintf(cgiOut,"Age of Truck: %s (method #1)<BR>\n",150 printf( "Age of Truck: %s (method #1)<BR>\n", 149 151 ages[ageChoice]); 150 152 … … 157 159 cgiFormString("age", ageText, 10); 158 160 159 fprintf(cgiOut,"Age of Truck: %s (method #2)<BR>\n", ageText);161 printf( "Age of Truck: %s (method #2)<BR>\n", ageText); 160 162 } 161 163 … … 178 180 since votes for nonexistent candidates should probably 179 181 be discounted... */ 180 fprintf(cgiOut,"Votes (method 1):<BR>\n");182 printf( "Votes (method 1):<BR>\n"); 181 183 result = cgiFormCheckboxMultiple("vote", votes, 4, 182 184 voteChoices, &invalid); 183 185 if (result == cgiFormNotFound) { 184 fprintf(cgiOut,"I hate them all!<p>\n");186 printf( "I hate them all!<p>\n"); 185 187 } else { 186 fprintf(cgiOut,"My preferred candidates are:\n");187 fprintf(cgiOut,"<ul>\n");188 printf( "My preferred candidates are:\n"); 189 printf( "<ul>\n"); 188 190 for (i=0; (i < 4); i++) { 189 191 if (voteChoices[i]) { 190 fprintf(cgiOut,"<li>%s\n", votes[i]);192 printf( "<li>%s\n", votes[i]); 191 193 } 192 194 } 193 fprintf(cgiOut,"</ul>\n");195 printf( "</ul>\n"); 194 196 } 195 197 … … 198 200 than the code and invented responses are not a danger 199 201 or can be checked in some other way. */ 200 fprintf(cgiOut,"Votes (method 2):<BR>\n");202 printf( "Votes (method 2):<BR>\n"); 201 203 result = cgiFormStringMultiple("vote", &responses); 202 204 if (result == cgiFormNotFound) { 203 fprintf(cgiOut,"I hate them all!<p>\n");205 printf( "I hate them all!<p>\n"); 204 206 } else { 205 207 int i = 0; 206 fprintf(cgiOut,"My preferred candidates are:\n");207 fprintf(cgiOut,"<ul>\n");208 printf( "My preferred candidates are:\n"); 209 printf( "<ul>\n"); 208 210 while (responses[i]) { 209 fprintf(cgiOut,"<li>%s\n", responses[i]);211 printf( "<li>%s\n", responses[i]); 210 212 i++; 211 213 } 212 fprintf(cgiOut,"</ul>\n");214 printf( "</ul>\n"); 213 215 } 214 216 /* We must be sure to free the string array or a memory
Note: See TracChangeset
for help on using the changeset viewer.