классический asp - response.redirect и response.write проблема - PullRequest
0 голосов
/ 13 апреля 2010

Проблема, если кто-то вводит в поле поиска местоположение, через которое он переходит на эту страницу местоположения, но если они вводят местоположение, которое не найдено, или ничего не вводят, мне нужно перенаправить обратно на домашнюю страницу (index.asp ) и выведите «упс, мы не смогли найти это» в поле поиска (поле ввода)

Это vb

    Case Else
    response.redirect "index.asp?whoops=whoops we couldnt find that"
End Select

Тогда в значении поля ввода у меня есть

value="<% =whoops %>"

Кстати, это не работает, во-первых, это лучший способ сделать это, потому что у id нет сообщения об ошибке в URL. Это позволяет избежать сообщения об ошибке как переменной, а затем вызвать ее в поле ввода, например,

<% =whoops %>

1 Ответ

1 голос
/ 13 апреля 2010

Вам не нужно сообщение об ошибке в URL. Кроме того, whoops не будет вам доступен как переменная только потому, что она находится в URL. Вы должны искать его в коллекции Request.Querystring. То, что вы хотели бы сделать, это что-то вроде этого на домашней странице:

Dim whoops : whoops = ""
If Request.Querystring("whoops") Then
    whoops = "whoops we couldnt find that"
End If

Тогда вы можете вывести <% = whoops%> в качестве атрибута значения HTML окна поиска. Это также лишит людей возможности назначать то, что они хотят, значению whoops, что является уязвимостью безопасности.

...