Avatar billede ponyboye Nybegynder
20. august 2004 - 08:07 Der er 8 kommentarer og
1 løsning

Få indsæt form til at se bort for tomme felter

Jeg har en aspsmartupload form med billedet upload.
Lige nu skal alle felter i formen være udfyldt før den vil upload ellers givder den fejl.
Hvordan får jeg den til at være lige glad med de felter der ikke er udfyldt? Dette gælder også for billedet upload.

<%
'  Variables
'  *********
  Dim mySmartUpload
  Dim file
  Dim intCount
  intCount=0
       
'  Object creation
'  ***************
  Set mySmartUpload = Server.CreateObject("aspSmartUpload.SmartUpload")

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


'  Select each file
'  ****************
  For each file In mySmartUpload.Files
  '  Only if the file exist
  '  **********************
      If not file.IsMissing Then
      '  Save the files with his original names in a virtual path of the web server
      '  ****************************************************************************
       
        'file.SaveAs("/../Billeder" & file.FileName)
        ' sample with a physical path
        file.SaveAs("D:websider\damslund\danskehojtider\Upload\" & file.FileName)

' Databaseforbindelse - husk at angive sti til din database
OpenDatabase

'Tilføjer brugeren til databasen
    Set rs = Server.CreateObject("ADODB.Recordset")
    strSQL = "select * from keywords"
    rs.Open strsql, conn, 1, 3

'Tilføjer brugeren til databasen og sender ham/hende til login siden
    rs.AddNew
    rs("kw_word") = mySmartUpload.Form("kw_word")
    rs("kw_type") = mySmartUpload.Form("kw_type")
    rs("kw_beskrivelse") = mySmartUpload.Form("kw_beskrivelse")
    rs("kw_smag") = mySmartUpload.Form("kw_smag")
    rs("kw_anvendelse") = mySmartUpload.Form("kw_anvendelse")   
    rs("kw_historie") = mySmartUpload.Form("kw_historie")
    rs("kw_kendetegn") = mySmartUpload.Form("kw_kendetegn")
    rs("kw_dyrkning") = mySmartUpload.Form("kw_dyrkning")
    rs("kw_kvalitet") = mySmartUpload.Form("kw_kvalitet")
    rs("kw_sorter") = mySmartUpload.Form("kw_sorter")
    rs("kw_sason") = mySmartUpload.Form("kw_sason")
    rs("Filsti") = file.FileName
    rs.update

        intCount = intCount + 1

End If
'  Display the number of files which could be uploaded
'  ***************************************************
  Response.Write("<BR>" & mySmartUpload.Files.Count & " file(r) kunne blive uploaded.<BR>")

'  Display the number of files uploaded
'  ************************************
  Response.Write(intCount & " file(r) uploaded.<BR>")
Next
%>
Avatar billede eagleeye Praktikant
20. august 2004 - 09:12 #1
Hvis du bruger Access så gå ind i Access og åben database filen åben tabellen i design mode. Vælg en kolonne og sæt "Tilladnullængde" til Ja det er punkt nr. 2-3 fra bunde listen med egenskaber/properties. Gentag for hver kolonne som du tillader at være tom.
Avatar billede eagleeye Praktikant
20. august 2004 - 09:13 #2
MAn kan også ligge en if sæting omrking, men det skulle ikke være nødvendigt hvis tilladnullængde er sat til Ja.

  if mySmartUpload.Form("kw_historie") <> "" then  rs("kw_historie") = mySmartUpload.Form("kw_historie")
Avatar billede ponyboye Nybegynder
20. august 2004 - 09:53 #3
alle felter i database stå på Tilladnullængde
Avatar billede ponyboye Nybegynder
20. august 2004 - 09:53 #4
ja
Avatar billede ponyboye Nybegynder
20. august 2004 - 11:04 #5
nu ser den sådanne ud:

rs.AddNew
    if mySmartUpload.Form("kw_word") <> "" then  rs("kw_word") = mySmartUpload.Form("kw_word")
    if mySmartUpload.Form("kw_type") <> "" then  rs("kw_type") = mySmartUpload.Form("kw_type")
    if mySmartUpload.Form("kw_beskrivelse") <> "" then  rs("kw_beskrivelse") = mySmartUpload.Form("kw_beskrivelse")
    if mySmartUpload.Form("kw_smag") <> "" then  rs("kw_smage") = mySmartUpload.Form("kw_smag")
    if mySmartUpload.Form("kw_anvendelse") <> "" then  rs("kw_anvendelse") = mySmartUpload.Form("kw_anvendelse")
    if mySmartUpload.Form("kw_historie") <> "" then  rs("kw_historie") = mySmartUpload.Form("kw_historie")
    if mySmartUpload.Form("kw_kendetegn") <> "" then  rs("kw_kendetegn") = mySmartUpload.Form("kw_kendetegn")
    if mySmartUpload.Form("kw_dyrkning") <> "" then  rs("kw_dyrkning") = mySmartUpload.Form("kw_dyrkning")
    if mySmartUpload.Form("kw_kvalitet") <> "" then  rs("kw_kvalitet") = mySmartUpload.Form("kw_kvalitet")
    if mySmartUpload.Form("kw_sorter") <> "" then  rs("kw_sorter") = mySmartUpload.Form("kw_sorter")
    if mySmartUpload.Form("kw_sason") <> "" then  rs("kw_sason") = mySmartUpload.Form("kw_sason")
    if mySmartUpload.Form("Filsti") <> "" then  rs("Filsti") = file.FileName
    rs.update

skal der gøres noget ved rs.update og rs.AddNew?
lige nu viser den fejl: HTTP 500 - Intern serverfejl
Avatar billede eagleeye Praktikant
20. august 2004 - 13:58 #6
nej .addnew og .update skulle virke som de er.

Du skulle få en bedre fejlkode hvis du i IE prøver dette:

Vælg menuen funktioner -> internetindstillinger... -> avanceret
find og fjern kryds i "vis meddelelse om uskadelige http-fejl" checkboxen
Avatar billede ponyboye Nybegynder
20. august 2004 - 23:26 #7
denne funktion har jeg arktivet. der kommer bare ikke nogen enlig fejl kode
Avatar billede ponyboye Nybegynder
24. august 2004 - 12:23 #8
jeg kan nu se at den taget det fint med felterne dem ser den bort fra, men billedet skal der uploades. kan der gæres noget ved det?
Avatar billede eagleeye Praktikant
24. august 2004 - 17:30 #9
Ja du kan lave en variable og kalde den for filnavn og sætte den efter filen er gemt:

  file.SaveAs("D:websider\damslund\danskehojtider\Upload\" & file.FileName)
  filnavn = file.FileName


Så kan du rette denne:

    if mySmartUpload.Form("Filsti") <> "" then  rs("Filsti") = file.FileName

Til dette:

    if filnavn <> "" then  rs("Filsti") = filnavn
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