I am running a form-to-email script and the data sent to the email address arrives in random order. I can't determine how the script is selecting the order in which it is sent. What do I need to do to send the data line-by-line in the order it appears on the form? Thanks, Larry M. Here is the script: (I know there are violations of good programming standards violated in this code(such as "use strict") but I have to upgrade to a newer version of perl and add the modules that I don't have. This will be done before the form is released to the world.) #!/usr/bin/perl print "Content-type: text/html\n\n"; read (STDIN, $buffer, $ENV{'CONTENT_LENGTH'}); @pairs = split(/&/, $buffer); foreach $pair (@pairs) { ($name, $value) = split (/=/, $pair); $value =~ tr/+/ /; $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg; $FORM{$name} = $value; } $to = '[EMAIL PROTECTED]' ; $subject = 'Application' ; $contents = 'Contents' ; open (MAIL, "|/usr/sbin/sendmail -t") || &ErrorMessage; print MAIL "To: $to\n"; print MAIL "Subject: $subject\n"; print MAIL "$contents\n"; foreach $key (keys(%FORM)) { print MAIL "$key = $FORM{$key}\n"; } close (MAIL); print "Thank you for applying."; sub ErrorMessage { print "<P>The server has a problem. Aborting script. \n"; exit; }