Форум программистов, компьютерный форум, киберфорум
VBScript/JScript/WSH/WMI
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.91/69: Рейтинг темы: голосов - 69, средняя оценка - 4.91
47 / 2 / 2
Регистрация: 08.04.2014
Сообщений: 18
VBS

Экранирование кавычек

06.07.2014, 20:44. Показов 14377. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте. Возникла следующая проблема. Редактирую ASP-страничку. В ней есть следующая строка на VBS:
JavaScript
1
2
3
4
5
<script language="VBScript">
...
location.href="?d1="&mid(formx.beg.value,1,2)&mid(formx.beg.value,4,2)&mid(formx.beg.value,7,4)&"&d2="&mid(formx.end.value,1,2)&mid(formx.end.value,4,2)&mid(formx.end.value,7,4)&"&fl="&formx.chk.value&"&zakaz="&formx.upr.value&"&prn=1"
...
</script>
Так вот, через formx.upr.value передаются строки. Иногда в них присутствуют кавычки ("") и тогда в url-ссылку передается неполная или вообще пустая (если начинается с кавычки) строка. Перепробывал несколько вариантов - решения не нашел. Подскажите, пожалуйста, как в этом случае экранировать кавычки или изменить vbs-скрипт, чтобы передавались полные строки.
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
06.07.2014, 20:44
Ответы с готовыми решениями:

Синхронизация кавычек=)
Привет, такая вопрос. Возможно ли сделать частичную синхронизацию между двумя текстовыми файлами? Если конкретней то, нужно...

Экранирование кавычек в CONTAINS
Подскажите, пожалуйста, как в запросе, в условие, экранировать двойную кавычку WHERE CONTAINS(S.Street_Name, '&quot;Ленина*&quot;') ...

Экранирование кавычек
Что-то уже мозг сломал. Есть вот такой код, который приходится выводить через echo в одинарных кавычках (echo 'text';): &lt;img...

5
Модератор
Эксперт JS
 Аватар для Eva Rosalene
5241 / 2115 / 416
Регистрация: 06.01.2013
Сообщений: 4,846
07.07.2014, 00:40
Лучший ответ Сообщение было отмечено Stalp как решение

Решение

Stalp, percent-encoding. Заменяйте кавычки на %22. Т.е:
JavaScript
1
2
3
4
5
<script language="VBScript">
...
location.href="?d1="&mid(formx.beg.value,1,2)&mid(formx.beg.value,4,2)&mid(formx.beg.value,7,4)&"&d2="&mid(formx.end.value,1,2)&mid(formx.end.value,4,2)&mid(formx.end.value,7,4)&"&fl="&formx.chk.value&"&zakaz="&Replace(formx.upr.value, """", "%22")&"&prn=1"
...
</script>
1
47 / 2 / 2
Регистрация: 08.04.2014
Сообщений: 18
07.07.2014, 08:59  [ТС]
Спасибо. К сожалению не заработало.
К примеру, при отправке строки "ООО "Молоко"" (без внешних кавычек) получаем:
?d1=01072014&d2=07072014&fl=0&zakaz=ООО &prn=1
Пробовал и как вы предложили - Replace(formx.upr.value, """", "%22"), и так Replace(formx.upr.value, Chr(34), "%22"), и так Replace(formx.upr.value, '"', '%22') (двойная кавычка в одинарных), и вот так Replace(formx.upr.value, "\"", "%22"), и даже так Replace(formx.upr.value, "<%#"%>", "%22"). Результат отличается, но правильно все равно не работает.
0
47 / 2 / 2
Регистрация: 08.04.2014
Сообщений: 18
08.07.2014, 13:18  [ТС]
FraidZZ, еще раз спасибо вам за помощь. Разобрался я в чем дело. Строка обрезалась раньше, еще в момент формирования комбобокса с этими строками.
Было:
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
<select name="upr">
<option selected value="0">Все заказчики</option>
<%
rs.close
rs.Open "select distinct name_upr from s051", , , ,adCmdText 
do Until rs.EOF%>
<option value="<%=rs.fields(0)%>"><%=rs.fields(0)%>
</option>
<%rs.MoveNext
Loop
rs.close%>
</select>
Изменил <option value="<%=rs.fields(0)%>"> на <option value="<%= replace(rs.fields(0),"""","%22")%>">, и все заработало как нужно.
0
Модератор
Эксперт JS
 Аватар для Eva Rosalene
5241 / 2115 / 416
Регистрация: 06.01.2013
Сообщений: 4,846
08.07.2014, 15:59
Stalp, в тексте странички лучше заменяйте не на %22, а на &quot; !

Добавлено через 4 минуты
Просто percent-encoding в основном применяется при передаче запроса на сервер от клиента. А в тексте html-странички лучше применять html-entity
Полный список: здесь
1
47 / 2 / 2
Регистрация: 08.04.2014
Сообщений: 18
08.07.2014, 16:19  [ТС]
FraidZZ, исправил, проверил, работает. Благодарю за помощь.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
08.07.2014, 16:19
Помогаю со студенческими работами здесь

Экранирование кавычек
aImages = &quot;&lt;table border=&quot;1&quot; id=&quot;table2&quot;&gt; &lt;tr&gt;&lt;td id=&quot;text_slider&quot; align=&quot;center&quot;&gt;&lt;h1&gt;Домашний текстиль&lt;br&gt;100%...

Экранирование кавычек
Помогите пожалуйста, долго мучаюсь уже. if ($password == $result) { printf(' header('Location: view.php?id=%s'); ',$result); ...

Экранирование кавычек
День добрый. Как правильно заэкранировать переменную rand, в нижеуказанном примере: &lt;script type='text/javascript'&gt; var...

Экранирование кавычек
Всем доброе утро! При показе данных заменяет ' или &quot; на \' и \&quot; соответственно... При этом magic_quotes (все три) стоят в off: ...

Экранирование кавычек
Нужен алгоритм на билдере, который экранировал бы одинарные кавычки. Написал это так: String MQuotedStr(String s) { int i = 2; if...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20%
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru