title: How do I get real text (not a gray hint or visible-yet-blank suggestion) to be in an HTML text field of a web page by default?
body: <p>I am using the "placeholder" attribute in HTML5.  I use it in a PHP web page with an HTML section.  It works as expected. </p>
  
  <p>Here is my code (it was modified slightly from the w3schools website): </p>
  
  <pre><code>&lt;!DOCTYPE html&gt;
  &lt;html&gt;
  &lt;body&gt;
  
  &lt;form action="/nextpage.php"&gt;
    &lt;input type="text" name="firstname" placeholder="John"&gt;&lt;br&gt;
    &lt;input type="text" name="lastname" placeholder="Doe"&gt;&lt;br&gt;
    &lt;input type="submit" value="Submit"&gt;
  &lt;/form&gt;
  
  &lt;/body&gt;
  &lt;/html&gt;
  </code></pre>
  
  <p>As a user with the web page I tried using a form with the placeholder element and I clicked submit, but it acts like the field is empty if I do not change the default text that appears in light gray.</p>
  
  <p>I want the text to be real -- and not act as though the field is empty.  If the user changes the placeholder text in the fields, then that is fine.  But if the user does not touch the placeholder text, I want the "Submit" click to ingest the placeholder text as if the user typed it in manually.  How do I do this?  I tried a variety of different things, but I cannot get it to work.  The text could appear black -- but this does not matter.  I want the text to be in the field if the user does not delete it or change it.</p>