Kyle,
The reason that is occuring is that mail() returns true if PHP believes that it has successful sent the email, unfortunately, it is not smart enough to know whether or not the email is correct. It simply knows that "Yes, PHP successfully sent this email information to the SMTP daemon."
You'll need some other code to determine email addresses.
Barand,
There is no flaw using the double quotes, in fact it is a good habit to get into. If you want to sent an email to multiple To: addresses you could do this:
// multiple To:
mail("$recipient1, $recipient2, $recipient3","$subject","$message $companyinfo","$header1");
// without the double quotes
$recipient = $recipient1 . ' ,' . recipient2 . ' ,' . $recipient3;
// i have to have those commas in there
// and most DB aren't going to return them
// i probably could add them earlier
$message = $msg . $companyinfo;
mail($recipient, $subject, $message, $header);
The bottom line is that the double quotes don't hurt, and they might help, and they make sure that the $variable is a string.