2013-11-16 5 views
0

У меня есть форма с URL-адресом, который мне нужно предотвратить от преобразования, так что я могу использовать $ _GET на целевой странице. Я пробовал urlencode, urldecode, html_entity_decode и т. Д., Но ничто из этого не препятствует преобразованию сущности html (parse_url ничего не делал, кроме как избавиться от всех важных вещей). This - единственный поток, который я нашел, который близок к тому, чего я пытаюсь достичь.Предотвращение преобразования сущности html php

Похоже, что должно быть простое решение, и это не происходит в другом месте, я использую URL, как это ...

Спасибо всем, кто может помочь!

echo "<option value='seeArtist.php?aid=".$row[0]."&ac=".$row[1]."&img=".$row[2]."'"> 
(blah, blah) 
<input type="submit" style="margin-left:10px" name="submit" value="Go" />'; 

Это результат нажатия кнопки отправки.

seeArtist.php?art_con=seeArtist.php%3Faid%3D18%26not%3Bac%3D+(aka)+Banksy%26not%3Bimg%3D0&submit=Go 

Две переменные являются целыми числами, поэтому содержимое базы данных не кодируется по URL-адресу.

Я подозреваю, что, поскольку это не происходит нигде, и это единственное место, где я помещаю ссылку в выбранную опцию, что она имеет какое-то отношение к действию submit. В firebug ссылка отображается точно так, как предполагается. Когда я отправляю URL-адрес, он кодируется.

ответ

0

Независимо от PHP, ваш HTML-код неверен. Вам нужно закодировать амперсанды. Ваш код должен выглядеть следующим образом:

echo "<option value=\"seeArtist.php?aid=" . $row[0] . "&amp;ac=" . $row[1] . "&amp;img=" . $row[2] . "\">\r\n"; 

Я также взял на себя смелость преобразования одинарных кавычек, чтобы сбежавшие двойные кавычки.

+0

Это результат вашего кода. Это происходит после того, как страница будет достигнута? То же самое происходит с моим кодом. seeArtist.php? art_con = seeArtist.php% 3Faid% 3D18% 26ac% 3D + Banksy% 26img% 3D0 & submit = Go – artsyL

+0

@artsyL Пожалуйста, повторите это в свой вопрос (показывая нам ** визуализированный ** HTML, а не тот браузер дисплеи). Кроме того, похоже, что ваш контент базы данных уже закодирован в URL. Нам нужна дополнительная информация. Также поможет скриншот данных в вашей базе данных. – Dai

+0

Спасибо. Я добавил дополнительную информацию. – artsyL

Смежные вопросы