Når jeg har klikket på en submit-knap (der er også en anden submit-knap, men den er irrelevant) kommer jeg frem godt nok til den korrekt side, men formens oplysninger er ikke submittet med.
<% if not Request.Querystring("message") = "" then %> alert('<%=Request.Querystring("message")%>') <% end if %> } </script>
</head>
<body onLoad="start();">
<% 'if Request.QueryString("link") = "" then 'response.write "<script>alert('Linket er gået tabet - luk vinduet og forsøg igen');</script>" 'end if %>
<script>
function validerIndtastet (methode) {
commonCheck();
//if (form.link.value.length == 0 ) { //alert("Der opstod en ukendt fejl, da linket er gået tabet. Sluk vinduet og forsøg igen."); //return false; //}
if (form.sprog.value == "default") { alert("Du mangler at angive et sprog."); return false; }
if (form.kategori.value == "default") { alert("Du mangler at angive en kategori."); return false; }
// ************* TITEL *************** if (form.titel.value.length == 0 ) { alert("Du mangler at angive en titel."); return false; }
//maksimum if (form.titel.value.length > 40) { alert("Det er ikke muligt at angive en titel over 40 tegn."); return false; }
if (form.beskrivelse.value.length < 200) { alert("Det er ikke muligt at angive en beskrivelse, som er under 200 tegn."); return false; }
if (form.beskrivelse.value.length == 0 ) { alert("Du mangler at angive en beskrivelse."); return false; }
if (form.beskrivelse.value.length > 250) { alert("Det er ikke muligt at angive en beskrivelse, som er over 250 tegn."); return false; }
if (methode != "onlyPic") { if (form.link1.value != 0 && form.link2.value != 0) { alert("Man kan ikke sende et nyt billede samtidigt med, at man ønsker at anvende et allerede sendt billede. Slet teksten i et af de to relevante felter, og prøv igen.") return false; }
if (form.link1.value == 0 && form.link2.value == 0) { alert("Man skal enten vælge at sende et nyt billede eller at anvende et allerede sendt billede.") return false; }
if (form.link1.value != 0) { var thisObjectValue = form.link1.value;
if (form.link1.value.substring(form.link1.value.lastIndexOf("\\"), form.link1.value.length).indexOf(" ") != -1) { alert("Der kan ikke bruges filer, som har et mellemrum i filnavnet. Slet derfor mellemrummet i navnet på filen, som ligger på din computer og prøv igen."); form.link1.focus(); return false; }
if (form.link1.value.substring(form.link1.value.lastIndexOf("\\"), form.link1.value.length).search(/[æøå !@£%/i) != -1) { alert("Der kan ikke bruges filer, som har tegnene 'æ, ø, å, !, @, £, %' i filnavnet. Slet derfor det eller de relevante tegn i navnet på filen, som ligger på din computer og prøv igen."); form.link1.focus(); return false; }
fil = thisObjectValue.substring(thisObjectValue.length-4).toLowerCase(); if (fil!=".jpg" && fil!=".gif"){ alert("Der kan kun bruges filer af typen .jpg og .gif!"); form.link1.focus(); return false; } } }
if (form.titel.value.match(/[<]{1}[\w]*[>]{1}/i)) { alert("Det er ikke tilladt at skrive kode i titlen. Slet venligst alt html-kode."); return false; }
if (form.beskrivelse.value.match(/[<]{1}[\w]*[>]{1}/i)) { alert("Det er ikke tilladt at skrive kode i beskrivelsen. Slet venligst alt html-kode."); return false; }
<p><b><font size="2">Oprettelsen af henvisning er igang</font></b></p>
<p><font size="2">Vejledning til nye brugere - <a href="artikel1-1.asp">klik her</a>!</font></p>
<p><font size="2">Når du har indskrevet en tekst til henvisningen, <br> kan du klikke på 'Ret'. På den måde retter systemet <br> teksten i din henvisning, så den bliver oprettet korrekt - <br> både teknisk og layoutmæssigt. </font></p>
<p><font size="2">Hvad systemet ikke hjælper med til, er formuleringen, <br> grammatikken, stavningen osv., så det er derfor <u><br> meget vigtigt</u>, at du er <u>yderst omhyggelig</u> hermed. <br> Redaktionen læser ikke korrektur på de oprettede <br> henvisninger.</font></p>
<p><font size="2">Titel <br> </font> <input type="text" OnClick="setCounter();" onkeyup="setCounter();" onkeydown="setCounter();" name="titel" style="width: 300px" size="31" style="font-family: Trebuchet MS; font-size: 10pt" maxlength="40"></p> <p><font size="2">Beskrivelse<br> </font> <textarea rows="8" name="beskrivelse" cols="47" OnClick="setCounter();" onkeyup="setCounter();" onkeydown="setCounter();" style="font-family: Trebuchet MS; font-size: 10pt"></textarea><font size="2" color="#C0C0C0"> <input type="button" disabled="true" onclick="commonCheck();" value=" Ret " name="check"><br> Du skal minimum indtaste følgende antal tegn endnu: </font> <font color="#C0C0C0"> <span style="background-color: #FF00FF"> <input type="text" name="counter1" size="4" disabled="true" style="border: 1px solid #FFFFFF; padding: 0; font-size:10pt; font-family:Trebuchet MS; vertical-align:text-top" value="200"></span></font><font size="2" color="#C0C0C0"><br> Du kan dog maksimalt anvende følgende antal tegn endnu: </font> <font color="#C0C0C0"> <span style="background-color: #FF00FF"> <input type="text" name="counter2" size="4" disabled="true" style="border: 1px solid #FFFFFF; padding: 0; font-size:10pt; font-family:Trebuchet MS; vertical-align:text-top" value="250"></span></font></p> <p><font size="2">Send enten et nyt billede...<br> </font> <input type=file name="link1" onClick="this.form.link2.value=''" size="48" style="font-family: Trebuchet MS; font-size: 10pt"></p> <p><font size="2">...eller anvend i stedet et allerede sendt billede<br> </font> <input type="text" name="link2" size="48" style="font-family: Trebuchet MS; font-size: 10pt"><font size="1"> </font> <input type="button" value="Hent..." name="B1" onClick="hentBillede();" style="font-family: Trebuchet MS; height: 24"></p> <p><font size="2">Ledige tider til forside-henvisning</font><br>
<% Set myConn=Server.CreateObject("ADODB.Connection") myConn.Open ("PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA SOURCE="+server.Mappath("/db/selvet.mdb")) strSQL = "Select distinct datopublish from search where (datopublish between #" & Date() + 1 & "# and #" & Date() + 364 & "#) order by datopublish" set rs = myConn.execute(strSQL)
do while not rs.EOF if isDate(rs("datopublish")) then myDates = myDates & rs("datopublish") & ", " End If rs.MoveNext Loop
'response.write("<script>alert('" & strSQL & "')</script>") 'response.write("<script>alert('" & myDates & "')</script>") if not myDates = "" then myDates = left(myDates,len(myDates)-2) end if
%>
<script>
rd = "<% response.write myDates %>"; nu = new Date();
temp = rd.split(", ");
function eia(str) { for (n = 0; n < temp.length; n++) if (temp[n] == str) return true;
if Request.QueryString("billede") = "" then start = request.querystring("start") if start = "" then start = 0
Set fs = CreateObject("Scripting.FileSystemObject") Set f = fs.GetFolder(server.mappath(billedeSti))
Set fc = f.Files For Each billed in fc arrayBuild = arrayBuild & billed.name & "|" next arrayBuild = left(arrayBuild, (len(arrayBuild) - 1))
myArray = Split(arrayBuild, "|")
Antalsider = int(ubound(myarray) / antalBillederPrSide) antal = 0 for i = start to (start + antalBillederPrSide-1) if not i > ubound(myarray) then if antal = 0 then Response.Write "<TR>" %><font face="Trebuchet MS"> </font> <td width="<%=Int(antalBillederPrRekke/100)%>"><p align="center"> <font face="Trebuchet MS"> <a href="artikel1.asp?sprog=<%response.write Request.Form("sprog")%>&kategori=<%response.write Request.Form("kategori")%>&titel=<%response.write server.URLEncode(Request.Form("titel"))%>&beskrivelse=<%response.write server.URLEncode(Request.Form("beskrivelse"))%>&link=<%response.write Server.URLEncode(Request.Form("link"))%>&linkType=<%response.write Request.Form("linkType")%>&link2=<%=billedeSti%><%=myArray(i)%>&datoPublikation=<%response.write Request.Form("datoPublikation")%>"> <IMG SRC="<%=billedeSti%><%=myArray(i)%>" border="1" color="black" width="80" height="100"> </a></td> <% else nesteside = 1 exit for end if
antal = antal + 1 if antal = 4 then Response.Write "</TR>" antal = 0 end if next if antal > 0 then Response.Write "</TR>" %> </font> </table> <center>
Du tænker nok på: <input type="hidden" name="link" value="<%response.write Request.QueryString("link")%>">
Men hvad du ikke ved er at der bruges get, idet brugeren smides til siden. Men det er irrelevant her - det har ikke noget med sagen at gøre.
De værdier som indskrives i formen på artikel1.asp bliver sletter eller bliver ikke overført til siden artikel1-0.asp - og det glæder alle værdierne. Intet bliver overført, mystisk nok. Hvorfor?
Ok, det har du ret i. Det var mig der lavede en fejl, da jeg skrev koden ind i indlægget - min fejl. Men i det kode, som jeg lige har pastet ind, står det korrekt, altså som du også lidt senere skrev.
Jeg tror, at du stirer dig blind på noget get-funktionalitet, som også har sin rolle, men det er her irrelevant. Pointen er, at der intet udskrives fra f.eks. "response.write Request.Form("sprog")", selvom der er blevet indtastet oplysninger på den forrige side.
Fjern så lige den enctype="multipart/form-data" og prøv igen.
Dette er jo egentlig et rigtig godt spørgsmål, forstået sådan at det tydeligt viser hvordan "klassisk" ASP i sig selv er en hindring, og en tidsmæssig udfordring, i frembringelse af selv forholdsvis simple systemer. ASP appelerer ligefrem til at blande præsentation, logik, database i en - undskyld udtrykket - pærevælling, som ingen kan finde hoved eller hale i. Joh, jeg synes det er underholdende nok, men det er ret beset et tidsspilde. Ikke?
>Fjern så lige den enctype="multipart/form-data" og prøv igen. Nu virker - og dog ikke. Værdierne bliver godt nok udskrevet, men jeg kan ikke bare fjerne enctype-koden, fordi så vil ASPUpload-koden (som brugeren bringes til via en anden submit-knap) lave en lang klagesang... så kan man ikke, når man submitter følgende...
Det er korrekt :) Men så skal du aflæse form-felterne med metoder i din upload komponent. Hvad mon det nu er de hedder? (Jeg havde ikke lige set at du brugte den til noget - som sagt: pærevælling....)
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.