• 🔥 Бесплатный курс от Академии Кодебай: «Анализ защищенности веб-приложений»

    🛡 Научитесь находить и использовать уязвимости веб-приложений.
    🧠 Изучите SQLi, XSS, CSRF, IDOR и другие типовые атаки на практике.
    🧪 Погрузитесь в реальные лаборатории и взломайте свой первый сайт!
    🚀 Подходит новичкам — никаких сложных предварительных знаний не требуется.

    Доступ открыт прямо сейчас Записаться бесплатно

Кавычка

  • Автор темы Автор темы Grrr
  • Дата начала Дата начала
G

Grrr

Подскажите Уважаемые, как заменить символ " в строке, Лотус ругается при передаче в поиск такого рода строки: "Это был я, "Вася"" и сравнить его с таким же полем? Думаю, надо заменять этим символы в обеих строках? Кодик бы помог.
 
на собаках \"
в скрипте "", еще в скрипте ковычку можно заменить символом | и {
 
ты б лучше тот код, что ругается запостил, а то не ясно как ты добиваешься ошибки
 
Сорри провадал долгое время.
По теме, делается запрос на отбор в папку:
flag = doc.GetItemValue("Tema")(0) = "1"
if flag Then
Call AddSearchParam(searchParam, {(Tema= "} & doc.GetItemValue("Tematika")(0) & {")})
End If,
Tematika - поле в форме поиска, которой присваивается значение через кнопку на форме (там какой то ужасный код).
При назначении полю обычных значений типа "Тема разная", поиск проходит на ура, а вот при значениях типа "Самое "Важное"", вываливается в ошибкой в формуле. Как исправить?
Ещё раз, нормальная тематика, на которую можно изменить - Разное
Неправильная тема (как мне кажется из за кавычек - Привет "Медвед"
 
Чего ты тут накрутил...

"(Tema=" & doc.GetItemValue("Tematika")(0) & ")"

Попробуй так.
 
Не работает.. :/
Решил проверить через msgbox строку запроса, получается:
Tema = Самое "Важное"
 
не, там все нормально в коде, проблема в строке для поиска.
я так понял используется db.Search
попробуй в строке, которую ты формируешь предварительно менять кавычки на двойные

Код:
Call AddSearchParam(searchParam, {(Tema= "} & Replace(doc.GetItemValue("Tematika")(0), {"}, {""}) & {")})
 
А MsgBox doc.GetItemValue("Tematika")(0) что выдает?
 
В обоих случаях:
Самое "Важное", да и..
Sub AddSearchParam(AParamArray As Variant, AParam As String)
If Isarray(AParamArray) Then
Redim Preserve AParamArray (Lbound(AParamArray) To Ubound(AParamArray) + 1)
Else
Redim AParamArray (0 To 0)
End If
AParamArray(Ubound(AParamArray)) = AParam
End Sub

Кхм.. Не совсем уверен, но кажется
Call AddSearchParam(searchParam, {(Tema = "} & Replace(doc.GetItemValue("Tematika")(0), {"}, {\"}) & {")})
Решило проблему с
Самое "Важное", но появилась другая:
Самое "Важное"\Очень

Неужели ещё доделывать обратную косую? {\\} ?? Подскажите, как написать правильно.

Неужели?..
T = Replace(doc.GetItemValue("Tematika")(0), {\}, {\\})
Call AddSearchParam(searchParam, {(Tema= "} & Replace(T, {"}, {\"}) & {")})
 
во-первых, это не слеш, а, во-вторых, обратный слеш, являясь по-умолчанию управляющим символом требует специального написания себя любимого, а именно в двойном виде (\\) ;)
 
во-первых, это не слеш, а, во-вторых, обратный слеш, являясь по-умолчанию управляющим символом требует специального написания себя любимого, а именно в двойном виде (\\) ;)

ну извините ;) :)
в общем не так важно как он называется, а главное как используется :)
 
Ребята, так всё правильно? Так и оставить?
 
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab