Avatar billede jensrrasmussen Juniormester
21. marts 2014 - 23:14 Der er 1 løsning

Multiple Select og Upload fra Persits

Jeg har oplevet følgende mærkelige hændelse, som jeg har forelagt Persits, uden at de reagerede på det, men nærmest indikerede at det mig, der var tosset - og måske har de ret ?

Tidligt i min asp-kodning lærte jeg, at man burde starte sine dokumenter med
  <%@ LANGUAGE=VBScript %>
  <% Option Explicit %>
  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="da">

i stedet for
  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="da">
  <%@ LANGUAGE=VBScript %>

Førstnævnte tvinger en til at definere alle sine variable (i en dim-sætning). Og dette har jeg så brugt lige siden. jeg har også brugt Upload fra Persits flere gange - og det virker fint. Indtil i dag!

For første gang brugte jeg en <SELECT> med attributten Multiple, altså <SELECT MULTIPLE ...>, da man skal kunne vælge flere værdien samtidig fra dropdown-boksen. Værdien skulle sammen med nogle filer sendes fra en form til et andet dokument.

Da jeg skulle samle de overførte værdier op - så jeg, at alt gik godt - bortset fra den overførte værdi fra multiple-select'en. her blev kun overført 1. valg og ikke de øvrige, når man bad om
xx = Upload.Form("navnet på den overførtes select").

Nå - ved kig på Persits hjemmeside og deres manual, ses faktisk et FAQ, som forklarer, at man med Multiple select skal samle de enkelte valg sammen, da de er overført som enkeltværdier og ikke som en samlet streng.

Altså samle op i stil med
For each item in Upload.form
  if item.name = "Min multiple-selects navn" then
      opsamling = opsamling & item.value
  end if
NeXT

Det siger FAQ'en, og det siger Persits også - MEN det virkede ikke! Der kom intet ud af opsamlingen, mens alle de andre værdier blev overført korrekt. Efter lang tids minimering af såvel det sendende dokument som det modtagne, viste det sig så, at det der går galt, er <% Option Explicit %> i starten af dokumentet. Går jeg tilbage til formen uden den eksplicitte definition af alle variable - ja så virker det.

Jeg ved ikke hvorfor. Måske giver Persits enkeltværdierne i multi-selecten nogle undernavne (som jeg jo ikke kender og derfor ikke har defineret?).

Mit problem er jo løst - men jeg kunne godt tænke mig at vide om nogle har lignende oplevelser med Persits UPLOAD.

mvh.

  /Jens
Avatar billede jensrrasmussen Juniormester
26. marts 2014 - 15:57 #1
Lukket
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

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