06. oktober 2006 - 14:53Der er
14 kommentarer og 1 løsning
hente to poster i en redirect
Denne fungerer: Response.Redirect RecSet("link")
Men jeg har også brug for at hente target fra db og her fungerer: Response.Redirect RecSet "('" & link & "', '" & target & "')" ikke. Hvordan skrives det så?
Dit spørgsmål er for kort formuleret til at man kan tyde hvad du vil og hvad du kunne tænke dig at gøre. Det eneste jeg kan se er at du forsøger at hente to felter fra noget der kunne ligne et recordset (men det kan jo kun blive et gæt med den kode og de informationer du har vist). Hvis det enste du skal vide, er hvordan du henter et ekstra felt fra et recordset, så er svaret:
RecSet("link") RecSet("target")
Hvis det er noget andet du skal vide, så må du prøve at formulere dig mere præcist... :)
Synes godt om
Slettet bruger
06. oktober 2006 - 15:27#4
Jeg bruger i en anden sammenhæng denne: Do Until RS2.EOF L =RS2("link") Target = RS2("target") RS2.MoveNext If Not RS2.EOF Then Response.Write "<tr><td><b>»</b><font class='stil'><a href='" & L & "' " & target & ">" & N & "</font></a></td></tr>" ...som fungerer fint. Men på det jeg arbejder på nu skal den blot redirecte
Det er lidt forvirrende det du siger, for omdirigeringen sker på serveren med redirect og target sættes på klienten.
Jeg kan godt forstå det du udskriver med Response.Write, men jeg har stadig svært ved at forstå hvad det er du vil opnå (du har jo vist kode for en redirect, så det kan ikke være det der er problemet). Hvis det bare er et link som skifter den aktuelle sides indhold ud med det der linkes til, så skal target vel bare fjernes fra dit link... men det kan næsten ikke være det du spørger efter, da du jo har kode som viser at du kan finde ud af lave sådan et link med response.write...
jeg er altså stadig usikker på hvad du ønsker... sorry...
Synes godt om
Slettet bruger
06. oktober 2006 - 22:30#6
Jeg prøver... Response.Write skriver linket i menuen som det skal. Klikker jeg på linket åbnes det i rammen angivet i target (i db). Men det er ikke det jeg skal bruge. Jeg skal hente linket i db og umiddelbart redirecte til siden posten indeholder. Men til en specifik ramme. Dvs at jeg foruden "link" også skal bruge en "target" funktion. Men det mener du altså ikke kan lade sig gøre med rediract?
Synes godt om
Slettet bruger
06. oktober 2006 - 22:37#7
Men det er selvfølgelig rigtigt hvad du skriver. Det ser ud til at jeg skal over noget javascript for opnå det.
Ja, jeg har i det mindste aldrig hørt at man skulle kunne omdirigere til et andet vindue/ramme på klienten, fra serveren. Jeg har derimod flere gange hørt at man ikke kan :)
Anyway! Så synes jeg netop at du gør det du siger du har brug for, i den kode du udskriver med den Response.Write du har lavet, men noget kunne tyde på at du gerne vil gøre det anderledes end med et link og en dertil hørende target...(?)
Hvad er det for noget information du gemmer i feltet target i databasen (giv evt. et eksempel)?
Synes godt om
Slettet bruger
07. oktober 2006 - 12:19#9
Det er fra denne form der skal redirectes til en side i en bestemt ramme (efter hvilke bruger der logger ind). Problemet er så lige "target". Der redirectes korrekt men siden åbnes i den ramme som formen ligger i.
If Not RecSet.EOF Then If Request.Form("admin2") = RecSet("adgangskode") Then login="ok" Else Response.Redirect "admin.asp?adgangskode=nej" End If
If Request.Form("admin1") = RecSet("brugernavn") Then login="ok" Else Response.Redirect "admin.asp?bruger=nej" End If
If Request.Form("omraadet") = RecSet("omraade") Then login="ok" Else Response.Redirect "admin.asp?omraadet=nej" End if
If login="ok" Then Session("login") = "ok" Session("user") = Request.Form("admin1") Session.TimeOut = 40 Response.Redirect RecSet("link") End If End If End if
Du "poster" en formular for at logge på et eller andet system. På den formular som du igangsætter dit loginfra, kan du specificere en attribut som hedder target. Target er på et form-element, som på et link (a-element), en besked til browseren om, hvilket vindue resultatet af dit "post" skal vises i.
Det er da helt rigtigt. Hvor enkelt bortset fra jeg ikke kan styre hvilken ramme siden skal åbnes i. Dvs. hvis bruger er "a" og adk. er "b" åbnes i ramme "x" mens bruger "b" med adk "b" skulle være åbnet i ramme "y". Men det må komme i næste episode :)
Tak for hjælpen og sender du et svar så du kan få dine p.
Ja, hvis du vil styre det på den måde, så skal du nok gennemføre login i 2 trin.
Det vil sige at du skal lave 2 forspørgsler til serveren i fbm. login. Den første spørger serveren om brugeren kan logges på og returnerer et svar, som dels indeholder om brugeren logges på, dels hvilken ramme/vindue der skal navigeres i og evt. hvilken side der skal navigeres til. Dernæst navigeres (hvis brugeren ellers kunne logges på) i den relevante ramme/vindue.
Din første forspørgsel kunne f.eks. laves i en skjult iframe (eller med AJAX), hvorefter du så med javascript på klienten navigere efter behov i den synlige ramme.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.