2010-04-13 5 views
0

Le problème si quelqu'un tape dans la boîte de recherche un emplacement qu'il traverse à cette page de localisation, mais si elles tapent dans un endroit qui n'est pas trouvé ou ils ne tapent rien dans j'ai besoin à rediriger vers la page d'accueil (index.asp) et afficher « oups nous ne pouvions trouver que » dans la zone de recherche (champ de saisie)classic asp - réponse.redirect et response.write problème

C'est le vb

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

Ensuite, la valeur de la champ de saisie J'ai

value="<% =whoops %>" 

Cela ne fonctionne pas d'ailleurs, d'abord est-ce la meilleure façon de le faire parce que l'id n'a pas plutôt le message d'erreur dans l'URL. Cet écart d'affichage là l'erreur comme une variable puis l'appeler dans le champ d'entrée comme,

<% =whoops %> 
+0

Une raison particulière pour laquelle la page de recherche/script ne peut pas afficher cette information? –

Répondre

1

Vous n'avez pas besoin du message d'erreur dans l'url. En outre, whoops ne sera pas disponible pour vous en tant que variable simplement parce qu'elle se trouve dans l'URL. Vous devez le rechercher dans la collection Request.Querystring. Qu'est-ce que vous voulez faire quelque chose de plus comme celui-ci sur la page d'accueil:

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

Ensuite, vous pouvez sortie <% = whoops%> comme attribut HTML value de la zone de recherche. Cela empêcherait également les personnes d'attribuer ce qu'elles veulent à la valeur de whoops, ce qui constitue une faille de sécurité.