Well, take a look at the source....
Say your value was "Blah blah blah". Now when printed in the html, it looks like this:
<input name=notes type=hidden value=Blah blah blah>
How's it supposed to know where the value ends? Based on the lack of quotes, it'll use the first space. Using quotes, it'll pass all of it.
print '<input name="notes" type="hidden" value="'.$_POST['notes'].'">';