Итак, что я пытаюсь сделать, добавьте значение name='' value в option в выпадающем списке. Все это довольно просто, используя только HTML. Но я хотел бы, чтобы name value было из базы данных, которую я ставил в очередь. Но строка базы данных содержит spaces между словами, и это вызывает проблему. Мне нужно, чтобы строка была Eten & drinken а не так, как она выводится сейчас, см. Пример ниже.
Прямо сейчас, у меня есть это:
<?php $q = $row["Categorie"]; echo " <option value=".$q." name=".$q."> ".$row["Categorie"]." <span style='font-size:1.2rem;color:#F8F8F8;'>(" . $row['x'] . ") </span> </option> ";?>
Что выводит следующее, если я смотрю на источник:
<option value="eten-en-drinken" name="Eten" &="" drinken=""> Eten & drinken (19) </option>
Я попытался найти google и str_replace , htmlspecialchars , utf8_encode и изменил name на data-type но отметил работу. Я просто хочу, чтобы это было Eten en drinken . Мне нужно это точное значение для использования во втором выпадающем меню. Любые мысли, документация или помощь?
Ваша проблема может быть решена путем добавления отсутствующих котировок для атрибута name .
echo " <option value=".$q." name='".$q."'>..."
Попробуйте этот код
$ q = $ row ["Categorie"];
echo "<option value =". $ stub. "name =". $ q. ">". $ row ["Categorie"]. "<span style = 'font-size: 1.2rem; color: # F8F8F8; > (". $ row ['x'].") </ span> </ option> ";
Вы должны попробовать использовать htmlspecialchars () при сохранении ваших данных на mySQL, а не при его извлечении –
<?php $new = htmlspecialchars("<a href='test'>Test</a>", ENT_QUOTES); echo $new; // <a href='test'>Test</a> ?>
При извлечении данных попробуйте использовать htmlspecialchars_decode () –
<?php $str = "<p>this -> "</p>\n"; echo htmlspecialchars_decode($str); // note that here the quotes aren't converted echo htmlspecialchars_decode($str, ENT_NOQUOTES); ?>