Avatar billede pretsmann Nybegynder
18. februar 2005 - 16:03 Der er 2 kommentarer og
1 løsning

SmartUpload samt sti i acces db

Hej

Jeg har fået lavet nedenstående uploadscript som næsten virker perfekt... der er bare et problem jeg ikke lige kan få løst;

Stien der gemmes i db'en gemmes i alle de poster hvor det pågældende brugernavn står... D.v.s. det samme billede vises på alle de anonncer brugeren har indtastet - Disse skal naturligvis kun vises på den annonce der har den tilhørende boligid...

Håber der er en som kan være mig behjælpelig med at rette nedenstående kode:

                <% if mode = "ny_annonce" then
                     
                        'Tjecker om brugeren er logget ind
                        if session("brugernavn") = "" then
                            Response.Redirect("login_bruger.asp?mode=login")
                        end if
                     
                        'Hvis brugeren har submittet login formen
                        if Request.ServerVariables("REQUEST_METHOD") = "POST" then
                             
                        'Tjecker om felterner er udfydlt
                        if Request.Form("Postnr") <> "" AND Request.Form("Postby") <> "" then
                     
                     
                        'Henter bruger profil
                        Set rs = Server.CreateObject("ADODB.connection")
                        rs.open conn

                        'Tilføjer felterne
                        sql = "INSERT INTO annoncer(brugernavn, Region, Postnr, [by], Beskrivelse, Telefon) VALUES ('" & Server.HTMLEncode(Request("Brugernavn")) & "', "& Request("Region") & ", " & Request("Postnr") & ", '" & Server.HTMLEncode(Request("By")) & "', '"&Server.HTMLEncode(Request("Beskrivelse"))& "', '"& Server.HTMLEncode(Request("Telefon")) & "')"
                        rs.execute(sql)

                        sql = "SELECT @@IDENTITY as newId"
                        set rs = rs.execute(sql)
                        newId = rs("newId")
                                             
                        Response.Redirect("login_bruger.asp?mode=billedarkiv&id=" &newId)
                     
                            else 
                                stripstate = "Du har ikke udfyldt alle felterne"
                            end if
                     
                 
                        end if %>


              Annonce oprettes fint...





                <% if mode = "billedarkiv" then
                     
                        'Tjecker om udlejer er logget ind
                        if session("brugernavn") = "" then
                            Response.Redirect("login_bruger.asp?mode=login")
                        end if
                     
                        Session.Timeout = 60
                     
                        'Henter billedarkiv
                        Set rs = Server.CreateObject("ADODB.Recordset")
                        sql = "select * from annoncer where brugernavn = '" & Session("brugernavn") & "'"
                        rs.open sql, conn, 1, 3
                         
                        %>



                    <FORM METHOD="POST" ACTION="login_bruger.asp?mode=billedupload" ENCTYPE="multipart/form-data">
<input type="hidden" name="annonce_id" value="<%=request.querystring("id")%>">
                    <table cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="560">
                        <tr>
                            <td><b>Billede 1:</b></td>
                        </tr>
                        <tr>
                            <td><INPUT TYPE="FILE" NAME="FILE1" SIZE="50"></td>
                        </tr>
                        <tr>
                            <td height="10"></td>
                        </tr>
                        <tr>
                            <td><b>Billede 2:</b></td>
                        </tr>
                        <tr>
                            <td><INPUT TYPE="FILE" NAME="FILE2" SIZE="50"></td>
                        </tr>
                        <tr>
                            <td height="10"></td>
                        </tr>
                        <tr>
                            <td><b>Billede 3:</b></td>
                        </tr>
                        <tr>
                            <td><INPUT TYPE="FILE" NAME="FILE3" SIZE="50"></td>
                        </tr>
                        <tr>
                            <td height="10"></td>
                        </tr>
                        <tr>
                            <td><b>Billede 4:</b></td>
                        </tr>
                        <tr>
                            <td><INPUT TYPE="FILE" NAME="FILE4" SIZE="50"></td>
                        </tr>
                        <tr>
                            <td height="10"></td>
                        </tr>
                        <tr>
                            <td><b>Billede 5:</b></td>
                        </tr>
                        <tr>
                            <td><INPUT TYPE="FILE" NAME="FILE5" SIZE="50"></td>
                        </tr>
                        <tr>
                            <td height="10"></td>
                        </tr>
                        <tr>
                            <td><b>Billede 6:</b></td>
                        </tr>
                        <tr>
                            <td><INPUT TYPE="FILE" NAME="FILE6" SIZE="50"></td>
                        </tr>
                        <tr>
                            <td height="40" colspan="3"><INPUT TYPE="submit" VALUE="Send billede(r)"></td>
                        </tr>
                    </table>
                 
                    </form>




<% if mode = "billedupload" then
         
                        'Tjecker om udlejeren er logget ind
                        if session("brugernavn") = "" then
                            Response.Redirect("login_bruger.asp?mode=login")
                        end if
                     
                        Session.Timeout = 60
         
  On Error Resume Next
           
'  Variables
'  *********
  Dim mySmartUpload
  Dim file
  Dim oConn
  Dim intCount
  intCount=0
  counter = 1
  Session.LCID = 1030

'  Object creation
'  ***************
  Set mySmartUpload = Server.CreateObject("aspSmartUpload.SmartUpload")
  mySmartUpload.MaxFileSize = 50000

'  Upload
'  ******
  mySmartUpload.Upload

'  Connect to the DB
'  *****************
  Set oConn = Server.CreateObject("ADODB.Connection")
  curDir = Server.MapPath("../database/bruger.mdb")
  oConn.Open "DBQ="& curDir &";Driver={Microsoft Access Driver (*.mdb)};"

'  Open a recordset
'  ****************

'  Select each file
'  ****************
  For each file In mySmartUpload.Files
  '  Only if the file exist
  '  **********************
      If not file.IsMissing Then

      '  Add the current file in a DB field
      '  **********************************
file.SaveAs "d:\web\localuser\pretsmann.dk\public_html\images\" & mySmartUpload.form("annonce_id") & "_" & counter & "." & file.FileExt
filnavn = "http://www.pretsmann.dk/images/" & mySmartUpload.form("annonce_id") & "_" & counter & "." & file.FileExt

felt = CStr("Img" & counter)
SQL = "Update annoncer Set "&felt&" = '" & filnavn & "' Where brugernavn = '" & Session("brugernavn") & "' "

      oConn.Execute (SQL)
     
        intCount = intCount + 1
      End If
  counter = counter + 1
  Next

'  Display the number of files uploaded
'  ************************************
    If Err Then
      stripstate = ("Filen var for stor: Den maksimale filstørrelse er 50 kb.<br><br>" & Err.description)
  Else

      stripstate = (intCount & " file(s) uploaded.<BR>")
  End If


'  Destruction
'  ***********
  oConn.Close
  Set oConn = Nothing
               
                        %>
Avatar billede eagleeye Praktikant
18. februar 2005 - 16:12 #1
Du skal også havde ID på den post hvor billeder skal ind i på den SQL sætning som opdater med filnavne:

SQL = "Update annoncer Set "&felt&" = '" & filnavn & "' Where brugernavn = '" & Session("brugernavn") & "' "

Så den bliver sådan her, antager din autonummer kolonne er ID:

SQL = "Update annoncer Set "&felt&" = '" & filnavn & "' Where brugernavn = '" & Session("brugernavn") & "' and id = " & mySmartUpload.form("annonce_id")
Avatar billede pretsmann Nybegynder
18. februar 2005 - 19:40 #2
Tusind tak, det var da lige det der skulle til...

Laver du et svar så du kan få lidt points :-)
Avatar billede eagleeye Praktikant
18. februar 2005 - 19:42 #3
Ja her et svar :)
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

IT-JOB

Forsvarsministeriets Materiel- og Indkøbsstyrelse

Analytiker til Security Operationscenter i Cyberdivisionen Hvidovre

Quadsat ApS

Robotics Engineer

Politiets Efterretningstjeneste

API-udvikler til PET

PlanBørnefonden

Full Stack Developer