SoulGodMedlem sedan aug. 20051 200 inlägg Jag försöker köra en kod här, men får det inte rätt:
Response.Redirect("forum_tradar.asp?amne=<%=Request.QueryString("amne")%>&trad=<%=Request.QueryString("trad")%>")
Men jag får detta felmeddelande:
Feltyp:
Kompileringsfel i Microsoft VBScript (0x800A03EE)
')' förväntas.
/domarforum/forum_skriv_inlagg.asp, line 68, column 65
Response.Redirect("forum_tradar.asp?amne=<%=Request.QueryString("amne")
Det ligger mer kod ovanför & nedanför just denna rad med redirecten, men det är här det är fel.
Och jag har testat så att värdena "amne" och "trad" skickas med, och dom följer med ordentligt.
Någon som kan säga vad jag gjort fel?
/martin
jarvkloMedlem sedan juli 20013 378 inlägg Hmm..
Du har blandat syntax lite...
Response.redirect står i ju innanför <% och %> - och då kan man inte använda <%= på det sättet du gör...
Alternativ:
<%
Response.Redirect("forum_tradar.asp?amne=" & Request.QueryString("amne") & "&trad=" & Request.QueryString("trad"))
%>
bygger ihop URL:en som en strängsammanslagning...
SoulGodMedlem sedan aug. 20051 200 inlägg Ah, som ajg trodde, nybörjarfel.. hehe
Dock är något fel ..
Det är såhär ... från sida 1 , skickas länken (http://soulgod.no-ip.info/domarforum/forum_skriv_inlagg.asp?amne=1&trad=1)
och på den sidan öppnas ett formulär , som man fyller i , och sedan "submit" ,
och efter submitten är gjord, så kommer då den response redirecten du hjälpte mig med ...
men problemet är , att länken som den skickar (redirecten) är alltså (forum_tradar.asp?amne=&trad=)
Den ger inga värden .. vad är fel?
Säg vilken kod du behöver, så visar jag mina koder.
jarvkloMedlem sedan juli 20013 378 inlägg Hmm
Du har ju method="POST" i formuläret... och då hamnar formulärdatat i Request.Form, inte i Request.Querystring ;)
... och byter du till method="GET" bör du lägga *alla* URL-parametrar som "hidden"-fält i formuläret (dvs inte ange någon querystring i formulärets action utan lägga även dem som formulärfält)...
Response.Redirect("forum_tradar.asp?amne='"& Request.QueryString("amne") &"' &trad='"& Request.QueryString("trad") &"'")
jarvkloMedlem sedan juli 20013 378 inlägg Hmm...
Webbis - det där ger en felaktig URL är jag rädd... Det skulle t.ex. bli
forum_tradar.asp?amne='1'&trad='1'
om värdena fanns i querystring och hade respektive värde satt till 1. En korrekt URL skall inte ha några citattecken runt "querystringvärden"
Värdena "amne" och "trad" inte finns i Request.Querystring utan i Request.Form när formuläret skickas in eftersom formuläret använder method="POST" ;)
SoulGodMedlem sedan aug. 20051 200 inlägg method="post" är då den jag använder.
Alltså, som jag förstår det, så skickar jag juh med informationen från sidan innan.
Alltså , amne & trad hämtas inte från formuläret, utan skall hämtas från "sidan innan".
För "sidan innan" skickar besökaren från den sidan, till skrivinlägg sidan, via länk:
<a href="forum_las_inlagg.asp?amne=<%=RS2("amne")%>&trad=<%=RS2("trad")%>&id=<%=RS2("id")%>"><%=RS2("titel")%></a>
Så, då kan det väl inte vara Request.Form, eftersom att "länken" inte ska hämta information från formuläret, utan hämta informationen ur "länken" ?
/Martin
jarvkloMedlem sedan juli 20013 378 inlägg Hmm...
Du har rätt - jag kanske var lite otydlig i förklaringen ... Ursäkta förvirringen i så fall :) :r
Jag antar att vi pratar om formuläret
<form name="fixa" method="post" action="forum_skriv_inlagg.asp?do=fixa">
som ligger på sidan http://soulgod.no-ip.info/domarforum/forum_skriv_inlagg.asp?amne=1&trad=1
När du trycker på "submit" i det formuläret, kommer "länken" som används att vara forum_skriv_inlagg.asp?do=fixa" - och i den ingår varken "amne" eller "trad".
Eventuella "querystringparametrar" in till formulärsidan följer alltså inte med automatiskt när formuläret skickas - och detta är förklaringen till varför dina request.querystring på "mottagarsidan" inte fungerar ("amne" och "trad " finns alltså helt enkelt inte med i Querystring i det läget)
Eftersom du kör "metod="post" är det dock mycket enkelt att komma förbi genom att lägga in "amne" och "trad" som
<input type="hidden" name="amne" value="<%=request.querystring("amne")%>">
<input type="hidden" name="trad" value="<%=request.querystring("trad")%>">
i formuläret på http://soulgod.no-ip.info/domarforum/forum_skriv_inlagg.asp?amne=1&trad=1 - Det var det jag försökte förklara (men jag missade att förklara "input hidden"-tekniken i hastigheten - jag bara förutsatte att du känner till den - Sorry :r )
"hidden"-metoden funkar också om du går över till method="get", men gör du det bör du lägga in även "do" som ett hidden-fält i formuläret för att garanterat få med även den i querystring (method="GET" innebär alltså att alla fält i formuläret automatiskt hamnar i querystring-delen av URL:en )
Alternativet är naturligtvis att modifiera "action" i formuläret såhär:
<form name="fixa" method="post" action="forum_skriv_inlagg.asp?do=fixa&amne=<%=Request.QueryString("amne")%>&trad=<%=Request.QueryString("trad")%>">
Hoppas det blev mer förståeligt nu :birp
SoulGodMedlem sedan aug. 20051 200 inlägg Ber så hemskt mycket om ursäkt! Jag försökte vara mer avancerad än vad jag har gärna till :)
Tack så hemskt mycket för förklaringen!
Jag trodde att det var response.redirect - länken som skickades vidare.
Om den nu ändå inte "skickar infon", varför har man en sån?
*dum fråga*
Ska pröva detta få se om jag kan få det att fungera.. ;)
SoulGodMedlem sedan aug. 20051 200 inlägg Helt underbart! Fungerande klockrent!!
En vidare fråga, eftersom du varit inne på sidan,
vad tycker du om upplägget i forumet? Såg det vettigt ut?
jarvkloMedlem sedan juli 20013 378 inlägg
SoulGod skrev:
Jag trodde att det var response.redirect - länken som skickades vidare.
Det är det - men när du trycker submit i formuläret, laddas sidan som innehåller "response.redirect", och i *det* läget var inte dina parametrar med i querystring (eftersom sidan laddas med den URL som kommer från "action" i formuläret i det läget)... Så när response.redirect körs saknas parametrarna, vilket gör att de ju då inte heller kan föras vidare till nästa steg (sidan du redirectar till)
Så hade bara råkat "bryta kedjan" så att säga genom att inte föra in dem i formuläret på ett eller annat sätt ;)
Fullt mänskligt - Det tar ett tag att bli fena på alla detaljer när det gäller den här typen av systemutveckling ;)
Hmm...
Upplägg osv funderade jag inte så mycket på är jag rädd (jag är inte hockeydomare och klurade bara över fenomenet du hade problem med) - men skönt att du fick till det till slut iaf :bire
SoulGodMedlem sedan aug. 20051 200 inlägg Jo, tack som fan.
Har hållt på med ASP i typ ett halvår, men har bara gjort lätta saker typ gästbok förut.
Och då är det liksom inte mkt värden som behöver skickas med hehe
Nu förstår jag varför det blev som det blev , och ska försöka komma ihåg det tills nästa gång hehe...
Jag tänkte mest på hur uppläget i forumet såg ut,
med "kolumner" och så?
Kan du ngt om MySql förresten?
/Martin
jarvkloMedlem sedan juli 20013 378 inlägg
SoulGod skrev:
Kan du ngt om MySql förresten?
Hmm... till husbehov kan man väl säga... men det är en annan historia - fråga i SQL-forumet direkt om du behöver SQL-hjälp ;)
SoulGodMedlem sedan aug. 20051 200 inlägg Ok , du får gärna kolla på min tråd i SQl-forumet, få se om du kan ngt om det.. heh