Avatar billede hni Nybegynder
02. februar 2007 - 10:30 Der er 7 kommentarer og
1 løsning

Querystring findes hvor?

Hej.
Jeg har noget kode hvor jeg uploader nogle filer til serveren og tilføjer noget til databasen...
Herefter skal jeg ved hjælp af en querystring bruge noget fra databasen som jeg lige har tilføjet til databasen ved hjælp af denne querystring: (filnavn)
Men jeg får intet ud af databasen (Er det fordi den er lukket på dette sted eller hvad går der galt? Der ligger tekst i filnavn i databasen)

Det er med dette jeg gør det:
<META HTTP-EQUIV=Refresh CONTENT="1; URL=http://www.domaine.dk/upload.aspx?navn=<%=rs("filnavn")%>">

Her er koden:
<%
Set Upload = Server.CreateObject("Persits.Upload.1")
Server.ScriptTimeout = 2200
Upload.OverwriteFiles = False
On Error Resume Next

Upload.SetMaxSize 10048576 ' Limit files to 1MB
Count = Upload.Save(Server.MapPath("/dben"))
%>
<HTML>
<BODY BGCOLOR="#FFFFFF">
<CENTER>

<% If Err <> 0 Then %>

<FONT SIZE=3 FACE="Arial" COLOR=#0020A0>
<H3>The following error occured while uploading:</h3>
</FONT>

<h2>"<% = Err.Description %>"</h2>
</FONT>

<FONT SIZE=2 FACE="Arial" COLOR="#0020A0">
Please <A HREF="aspupload.asp">try again</A>.
</FONT>

<% Else %>
<h2>Success! <% = Count %> file(s) have been uploaded.</h2>
</FONT>

<% For Each File in Upload.Files
filename = File.FileName %>
<TD><B><% = File.OriginalPath %></B></TD>
<TD ALIGN=RIGHT VALIGN="TOP"><% =File.Size %> bytes</TD>
<TD ALIGN=RIGHT VALIGN="TOP"><% =File.OriginalSize %> bytes</TD><TR>

<%
t = t + 1
    strbeskrivelse = Replace(Upload.Form("spilbesk"), "'", "''")
    strspil = 1
    stroverskrift = Replace(Upload.Form("spiln"), "'", "''")
    strnews = Replace(Upload.Form("news"), "'", "''")
    strmoviekategori = Replace(Upload.Form("spilkat"), "'", "''")

' Tilfojer til databasen
Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=" & Server.MapPath("/datadb/db.mdb")
Conn.Open DSN


If t = 1 Then
    strSQL = "INSERT INTO seneste (pic) VALUES ('"& File.Filename &"')"
    Conn.Execute(strSQL)
    set sID = Conn.Execute("SELECT @@IDENTITY AS NewID")
    Session("senesteid") = sID("NewID")
Else
    strUpdate = "UPDATE seneste SET filnavn = '"& File.Filename &"', beskrivelse = '"& strbeskrivelse &"', moviekategori = '"& strmoviekategori &"', visnyhed = '"& strnews &"', overskrift = '"& stroverskrift &"', spil = '"& strspil &"' WHERE id = "& Session("senesteid") &""

    Conn.Execute(strUpdate)
    Session("senesteid") = ""
%>

<META HTTP-EQUIV=Refresh CONTENT="1; URL=http://www.xxx.dk/upload.aspx?navn=<%=rs("filnavn")%>">

<%

End If
Next
End If
%>

Mvh.
Henrik
Avatar billede hni Nybegynder
02. februar 2007 - 13:38 #1
Det eneste jeg egentlig prøver at hitte ud af er hvor den <META... linje skal være i scriptet så den kan læse mit "filnavn" databasefelt når den stadig er åben.
Avatar billede cpufan Juniormester
02. februar 2007 - 14:40 #2
prøv

<META HTTP-EQUIV=Refresh CONTENT="1; URL=http://www.xxx.dk/upload.aspx?navn=<%=File.Filename%>">
Avatar billede hni Nybegynder
02. februar 2007 - 16:48 #3
Kanon... Det virker, mange tak!!! :-)

Kan jeg egentlig gøre så jeg både vælger fil nr. 1 og fil nr. 2? For file.filename er jo en "tæller" ??

Det den Meta linje gør er at vælge filen jeg har uploaded og uploader den til en anden server via ftp med koden som er i upload.aspx...

Har du nogen ide om det?
Ellers så bare send svar så får du point.. :-)
Avatar billede cpufan Juniormester
02. februar 2007 - 17:19 #4
<%
sendnavn ="tom=1"
taeller = 0
For Each File in Upload.Files
filename = File.FileName
taeller = taeller + 1
sendnavn = sendnavn &"&navn"&taeller&"0"&File.FileName
%>
<TD><B><% = File.OriginalPath %></B></TD>
<TD ALIGN=RIGHT VALIGN="TOP"><% =File.Size %> bytes</TD>
<TD ALIGN=RIGHT VALIGN="TOP"><% =File.OriginalSize %> bytes</TD><TR>

<%
t = t + 1
    strbeskrivelse = Replace(Upload.Form("spilbesk"), "'", "''")
    strspil = 1
    stroverskrift = Replace(Upload.Form("spiln"), "'", "''")
    strnews = Replace(Upload.Form("news"), "'", "''")
    strmoviekategori = Replace(Upload.Form("spilkat"), "'", "''")

' Tilfojer til databasen
Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=" & Server.MapPath("/datadb/db.mdb")
Conn.Open DSN


If t = 1 Then
    strSQL = "INSERT INTO seneste (pic) VALUES ('"& File.Filename &"')"
    Conn.Execute(strSQL)
    set sID = Conn.Execute("SELECT @@IDENTITY AS NewID")
    Session("senesteid") = sID("NewID")
Else
    strUpdate = "UPDATE seneste SET filnavn = '"& File.Filename &"', beskrivelse = '"& strbeskrivelse &"', moviekategori = '"& strmoviekategori &"', visnyhed = '"& strnews &"', overskrift = '"& stroverskrift &"', spil = '"& strspil &"' WHERE id = "& Session("senesteid") &""

    Conn.Execute(strUpdate)
    Session("senesteid") = ""
%>

<META HTTP-EQUIV=Refresh CONTENT="1; URL=http://www.xxx.dk/upload.aspx?<%=sendnavn%>">

<%

End If
Next
End If
%>

Mvh.
Avatar billede cpufan Juniormester
02. februar 2007 - 17:20 #5
så får du

navn1=blabla&navn2=blabla2
Avatar billede hni Nybegynder
02. februar 2007 - 17:36 #6
Okay super, jeg prøver lige at kigge på det i morgen formidadg, er på vej ud af døren.. Men mange tak indtil videre.. :-)

PS. Nu når <Meta osv. kalder en anden side, kører den egentlig resten af scriptet færdig så? Altså så man kan køre noget bagefter <Meta??
Avatar billede cpufan Juniormester
02. februar 2007 - 17:40 #7
så snart siden er loadet færdig kører tælleren for din refresh
og den er jo sat til 1 så det er begrænset hvad der kan vises,
men bortset fra det kan du jo godt sætte noget ind
Avatar billede hni Nybegynder
03. februar 2007 - 16:05 #8
Hey, ahhh.. ja ideen der var jo egentlig rigtig god - problemer er bare at det jeg bruger i min upload.asxp er asp.net og det har jeg ikke lige helt styr over at få ændret (endnu) så kan man evt. lave det så "sendnavn" kan laves så sendnavn1 er fil1 og sendnavn2 er fil2 ?? så jeg blot kan køre "<meta" linjen 2 gange med hvert sit aspx script?
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester