2014-10-20 2 views
1

Я создал html-форму, заполненную запросом mysql. В данных есть пробелы.html forms и php populate from Mysql

например, "сайт Боб", "Сара домой"

Когда форма создается в браузере я получаю это:
Боб
сайт
Сара
домой

Вместо
Bob сайт
Сара дома.

Я знаю, что мне нужно отформатировать мои данные, но не могу найти примеров. Мой код формы ниже.

<?php include("includes/header.php"); ?> 
<?php 
$site = mysql_query("select distinct `site_name` from sept_billing"); 
?> 
<html> 
<body> 
<h2>Create a new install</h2> 
    <form method="post" action="actions/newmachine_action.php"> 
     <table border = '0'> 
      <tr> 
       <td><b>Site name:</b></td> 
       <td><input id="site" type="text" name="site" size="40" list="sites" value = 'Choose site name' /> 
        <datalist id="sites"> 
         <?php 
         while ($row = mysql_fetch_array($site)) 
         { 
          echo "<option value=".$row[0].">"; 
         } 
         ?> 
        </datalist></td> 
       </tr> 
      </table> 
      <input type="submit" value="Create" /> 
     </form> 

    </body> 
    </html> 
    <?php include("includes/footer.php"); ?> 
+1

В каком браузере вы проверку? Он не будет отображаться в некоторых браузерах. – Choco

ответ

0

Пожалуйста, измените это и дайте мне знать, если это работает

echo "<option value=".$row[0].">"; 

в

echo "<option value='".$row[0]."'>"; 
+0

Это сработало. Спасибо. –

0

Это будет работать

   <?php 
        while ($row = mysql_fetch_array($site)) 
        { ?> 

         <option><?php echo $row['name']; ?></option> 

       <?php } ?> 
+0

Привет Это сработало. благодаря –

0

попробовать

"<option text='".$row[0]."' value='".preg_replace(' ', '-', $row[0])."'></option>" 

или

"<option value='".preg_replace(' ', '-', $row[0])."'>".$row[0]."</option>" 

я считаю, что значение не может иметь места