Search code examples
phptextbox

First word only appearing in a form text box


Yes, I am coding on New Year's eve. Anyway, I have what I think is a strange problem (strange enough to need help). The following code works (sort of). The echo on line 6 ($row["sitename"]) outputs a full name like "Huntington Park", BUT... the first textbox inside the form only shows "Huntington", not the second part of the name. Included below is a snipped of the screen.

    $query = "SELECT * FROM `siteinformation` 
            WHERE `id` = '".$sitedrop."'";
            echo $query;
    $results = $pdo->query($query);
        while ($row = $results->fetch()) { 
        echo $row["sitename"].'
            <form action="dummypage.php" method="post">
            <table width="526">
              <tr>
                <td width="520" align="right"><p>Site Name: 
                    <input type="text" name="sitename" value='.$row["sitename"].'>
                 </p>
                  <p>Program: 
                    <input type="text" name="program" value='.$row["program"].'>
                  </p>
                  <p>Phone: 
                    <input type="text" name="sitephone" value='.$row["sitephone"].'>
                  </p>
        </td>
        </tr>
        </table>
</form>';
        }

Solution

  • Your code outputs:

    <input type="text" name="sitename" value=Huntington Park>
    

    and it should be:

    <input type="text" name="sitename" value="Huntington Park">
    

    Change:

        <input type="text" name="sitename" value='.$row["sitename"].'>
    

    to:

        <input type="text" name="sitename" value="'.$row["sitename"].'">
    

    Since the value is not in quotes - it picks only the first string! You should do the same with the other inputs.