<?xml version="1.0" encoding="utf-8"?>
			
			<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
			<channel>
			<title>Charlie Arehart&apos;s Blog - CFFundamentals</title>
			<link>http://www.carehart.org/blog/client/index.cfm</link>
			<atom:link href="http://www.carehart.org/blog/client/rss.cfm" rel="self" type="application/rss+xml" />
			<description>Charlie Arehart&apos;s Blog</description>
			<language>en-us</language>
			<lastBuildDate>Sun, 28 Dec 2008 18:51:00 -0400</lastBuildDate>
			<generator>BlogCFC</generator>
			<docs>http://blogs.law.harvard.edu/tech/rss</docs>
			<managingEditor>blogmaster@carehart.org (Charlie Arehart)</managingEditor>
			<webMaster>blogmaster@carehart.org (Charlie Arehart)</webMaster>
			
			<item>
				<title>Learning resource for beginning web developers</title>
				<link>http://www.carehart.org/blog/client/index.cfm/2008/12/28/beginning_web_developer_resources</link>
				<description>
				
				If you know anyone needing to learn the fundamentals of web application development--not CFML, but things like HTML, CSS, Javascript, and so on--here&apos;s an interesting resource: &lt;a href=&quot;http://msdn.microsoft.com/en-us/beginner/bb308786.aspx&quot;&gt;Beginner Developer Center, Tier 1&lt;/a&gt;

&lt;h4&gt;Yes, it&apos;s a MS resource: don&apos;t let that keep you away&lt;/h4&gt;

Now, some will see this is from Microsoft and flinch, but don&apos;t let that scare you away. It&apos;s a set of introductory resources that could help any beginning web developer, and while the first 2 and last 2 of the 14 sections are MS-specific, the rest are not. 

And besides the web-oriented topics above (&lt;a href=&quot;http://msdn.microsoft.com/en-us/beginner/bb975145.aspx&quot;&gt;HTML&lt;/a&gt;, &lt;a href=&quot;http://msdn.microsoft.com/en-us/beginner/bb308768.aspx&quot;&gt;CSS&lt;/a&gt;, &lt;a href=&quot;http://msdn.microsoft.com/en-us/beginner/bb308770.aspx&quot;&gt;Javascript&lt;/a&gt;, and more), there are also sections introducing basic programming concepts like &lt;a href=&quot;http://msdn.microsoft.com/en-us/beginner/bb308788.aspx&quot;&gt;problem solving&lt;/a&gt;, &lt;a href=&quot;http://msdn.microsoft.com/en-us/beginner/bb308791.aspx&quot;&gt;processing and storing data&lt;/a&gt;, even &lt;A href=&quot;http://msdn.microsoft.com/en-us/library/bb297401.aspx&quot;&gt;introducing OO&lt;/a&gt; (again, with no reference to C# or anything .NET), and more.

For each of the 14 topics, there is both an article-level discussion and either an audio or video version.

&lt;h4&gt;Yes, it&apos;s in a resource center about VWD. Don&apos;t let that scare you away, either&lt;/h4&gt;

I&apos;ll note that beyond being &quot;from MS&quot;, it&apos;s also indeed specifically part of a resource center for their &lt;a href=&quot;http://www.microsoft.com/express/vwd/&quot;&gt;Visual Web Developer&lt;/a&gt; IDE. Again, most of the content offered in this beginner resource is not really specific to that editor or to .NET. 

And frankly, I wouldn&apos;t hold it against a CF developer to consider using the editor. Hey, it&apos;s free, and consider also that sometimes you may have to do some editing on a server with nothing but Notepad available. Perhaps you&apos;re not a fan of Eclipse, don&apos;t have an available license for DW/HS, and you want more than just Notepad. (Yes, I do also know about the many other available free (and some commercial) editor alternatives. I list them in my CF411 site category of &lt;a href=&quot;http://www.carehart.org/cf411/index.cfm#editors&quot;&gt;Editors/IDEs&lt;/a&gt;.) 

(And if you&apos;re ever stuck in a situation where you&apos;re unwilling or not allowed to install any new editor on your server, just last week I &lt;a href=&quot;http://carehart.org/blog/client/index.cfm/2008/12/18/notepad_goto&quot;&gt;wrote about a tip for using Notepad&lt;/a&gt; if you ever find that you can&apos;t use the Goto Line feature.) 

Anyway, the point is I&apos;m not making a pitch here for VWD nor any statement against CFE. Let&apos;s not go there. :-) Indeed, to any who may want to take the chance to comment here in scorn or to deride the VWD editor or MS, or to point out some other editor alternative, let&apos;s not go there, either.

The point of this entry is the free learning resources for beginning web developers that I found on the MS site. I hope it may help some people. 
				</description>
				
				<category>resource lists</category>
				
				<category>CFFundamentals</category>
				
				<category>editors</category>
				
				<category>training</category>
				
				<pubDate>Sun, 28 Dec 2008 18:51:00 -0400</pubDate>
				<guid>http://www.carehart.org/blog/client/index.cfm/2008/12/28/beginning_web_developer_resources</guid>
				
			</item>
			
			<item>
				<title>CFFundamentals: Mimicking a form submission using CFHTTP</title>
				<link>http://www.carehart.org/blog/client/index.cfm/2006/12/14/cffundamentals_mimicking_form_submission_cfhttp</link>
				<description>
				
				While developers who&apos;ve used CFML for a long time will regard some topics as old hat, we have to remember that there are folks who either have come along recently or simply never used some feature. This is one of those topics, and since I answered it on a list, I offer it here.

I&apos;d like to start doing that more often (reformatting some answer I give on some list, so that others may learn from it.) As in this case, I&apos;ll refer to such as CFFundamentals and create a category for them so that interested readers may find them more readily.

&lt;img src=&quot;/images/cfhttp_dhl.jpg&quot;&gt;
&lt;h3&gt;The problem&lt;/h3&gt;
Someone wrote wanting to mimic (in CFML code) the submission of some data to a form that they saw happening within an Airborne Trackship (http://track.dhl-usa.com/TrackEmail.asp) page. 

They saw that the form submitting to that allowed one to enter an email address and some tracking numbers to have a status email sent back to that address. Using &quot;view source&quot; in the browser, they observed that the form actually called a Javascript form which submitted the form to TrackEmail.asp?nav=TrackByEmail. Since this was on a page at http://track.dhl-usa.com/, they realized they&apos;d need to submit to http://track.dhl-usa.com/TrackEmail.asp?nav=TrackByEmail.

They also noticed that the form had two input fields, txtTracknbrs and txtEmailAddress, so they tried to put together a CFHTTP request that tried to submit to the form using this URL:

http://track.dhl-usa.com/TrackEmail.asp?nav=TrackByEmail&amp;txtTracknbrs=nnnnnnnnn&amp;txtEmailAddress=someemail@address.com 

It didn&apos;t work. They asked if anyone knew why.

&lt;h3&gt;My Response: He was close, but needed to understand a couple of points&lt;/h3&gt;

Here&apos;s what I wrote:
&lt;blockquote&gt;
I think your problem is in presuming that the Javascript method builds a request that looks like the one you tried in CFHTTP. I just reviewed the page, and I see that it&apos;s a form, with a METHOD=POST, and so your CFHTTP needs to send its info in the way a form post would. And that&apos;s NOT by passing the variables on the URL as you have. (One may argue that they can write CFML apps that accept either FORM or URL variables, but the page being called is an ASP page, so we can&apos;t make that presumption.)

With that, I changed your CFHTTP to the following and it worked (you should be getting an email soon, as it told me the request was accepted). Try it
yourself:

&lt;code&gt;
&lt;cfhttp url=&quot;http://track.dhl-usa.com/TrackEmail.asp&quot; method=&quot;POST&quot;&gt;
	&lt;cfhttpparam type=&quot;URL&quot; name=&quot;nav&quot; value=&quot;TrackByEmail&quot;&gt;
	&lt;cfhttpparam type=&quot;FORMFIELD&quot; name=&quot;txtTrackNbrs&quot;
value=&quot;nnnnnnn&quot;&gt;
	&lt;cfhttpparam type=&quot;FORMFIELD&quot; name=&quot;txtEmailAddress&quot;
value=&quot;someemail@address.com&quot;&gt;
&lt;/cfhttp&gt;

&lt;cfoutput&gt;
#cfhttp.filecontent#
&lt;/cfoutput&gt;
&lt;/code&gt;

Note that it uses a TYPE=&quot;URL&quot; for the nav query string value (as that WAS passed on the URL), but uses TYPE=&quot;FormField&quot; for the form fields, since those are passed as form fields. You were right in getting the exact names of the form fields as used in the form fields of the form. That&apos;s critical as well.

I&apos;ll point out as well that when trying to mimic such forms in CFHTTP, it&apos;s also sometimes critical to send along any hidden form fields. There were two on that form, but I left them off and it seems to work. IF you found you needed to add them, just add them as more TYPE=&quot;FormField&quot; values.

I should note as well that sometimes when trying to simulate a form submission, you will also need to send along any cookie values that might be being sent by your browser to the server. Those aren&apos;t shown in the form.
You could use browser/server proxy tools (like the free Fiddler or Firebug
tools) to detect what&apos;s being sent along. 
&lt;/blockquote&gt;

Hope that may help other readers.

I&apos;ll add in this blog entry that regarding that last point, about using HTTP proxies to study the browser/server communication, I wrote about those previously in:

&lt;a href=&quot;http://carehart.org/blog/client/index.cfm/2006/11/28/alternative_http_debugging_proxies&quot;&gt;Alternatives HTTP debugging proxies, for debugging&lt;/a&gt; 
				</description>
				
				<category>CFFundamentals</category>
				
				<category>cfml</category>
				
				<pubDate>Thu, 14 Dec 2006 15:45:00 -0400</pubDate>
				<guid>http://www.carehart.org/blog/client/index.cfm/2006/12/14/cffundamentals_mimicking_form_submission_cfhttp</guid>
				
			</item>
			</channel></rss>