使用SQL数据库字段向输入字段添加名称

时间:2017-04-19 12:38:07

标签: php html sql

所以我要做的就是在下拉列表中向name='' value添加option。这一切都非常简单,仅使用HTML。但是我希望name value来自我排队的数据库。但是数据库字符串在单词之间有spaces,这会导致问题。我需要字符串为Eten & drinken而不是现在输出的方式,请参阅下面的示例。

现在,我已经得到了这个:

   <?php $q = $row["Categorie"];
        echo    "   
            <option value=".$q." name=".$q.">
               ".$row["Categorie"]."&nbsp;&nbsp;
                   <span style='font-size:1.2rem;color:#F8F8F8;'>(" . $row['x'] .  ")
                   </span>
            </option>
    ";?>

如果我查看来源,会输出以下内容:

<option value="eten-en-drinken" name="Eten" &amp;="" drinken="">
    Eten &amp; drinken&nbsp;&nbsp;(19)
</option>

我已尝试搜索Google和str_replacehtmlspecialcharsutf8_encode并将name更改为data-type,但注意到有效。我只想让它成为Eten en drinken。我需要在第二个下拉菜单中使用这个确切的值。有任何想法,文件或帮助吗?

3 个答案:

答案 0 :(得分:1)

通过添加name属性的缺失引号,可以解决您的问题。

echo    "   
        <option value=".$q." name='".$q."'>..."

答案 1 :(得分:0)

试试此代码

$ q = $ row [“Categorie”];

echo“&lt; option value =”。$ stub。“name =”。$ q。“&gt;”。$ row [“Categorie”]。“&lt; span style ='font-size:1.2rem;颜色:#F8F8F8;'&gt;(“。$ row ['x']。”)&lt; / span&gt;&lt; / option&gt;“;

答案 2 :(得分:0)

在将数据保存到mySQL时应该尝试使用htmlspecialchars()而不是在检索数据时使用{ - 3>} -

<?php
  $new = htmlspecialchars("<a href='test'>Test</a>", ENT_QUOTES);
  echo $new; // &lt;a href=&#039;test&#039;&gt;Test&lt;/a&gt;
?>

检索数据时,请尝试使用htmlspecialchars_decode() -

<?php
  $str = "<p>this -&gt; &quot;</p>\n";
  echo htmlspecialchars_decode($str);

  // note that here the quotes aren't converted
  echo htmlspecialchars_decode($str, ENT_NOQUOTES);
?>