Avatar billede wanda13 Nybegynder
14. august 2003 - 21:53 Der er 11 kommentarer og
1 løsning

Request.Form.Count

Jeg har denne kode :

<%   
if request("type") <> " " then
    Response.write "<form name='form2' action='" & request.serverVariables("SCRIPT_NAME") & "' method='post'>"

      if (request("type") <> "" AND request("type") <> "Vælg varenr") then
 
    strSQL2 = "SELECT * FROM " & Request("type") & " "
    Set database2 = con.Execute(strSQL2)
    'her tæller vi hvor mange felter der er udtrukket i recordsettet
    iFieldCount = database2.Fields.Count - 1

    if not database2.eof then
    response.write"</form></tr><tr><td colspan='3'><center><br>Indtast vare oplysninger<br></td>"
      ' her gennemløber vi de felter der er udtrukket
      for i = 0 to iFieldCount
          str = Replace(database2(i).name, "aa", "&aring;")
          str = Replace(str, "oe", "&oslash;")
          str = Replace(str, "ae", "&aelig;")
          str = Replace(str, "Aa", "&Aring;")
          str = Replace(str, "Ae", "&AElig;")
          str = Replace(str, "Oe", "&Oslash;")

          if (database2(i).name = ("Fabrikat") OR database2(i).name = ("Specifikationer") OR database2(i).name = ("Disabled") OR database2(i).name = ("Tilbud") ) then
            if database2(i).name = ("Fabrikat") then
                Response.write "<tr><td><div align='right'>" & str & " : </td><td><select name='fabrikat' size='1'>"
                Response.write "<option>V&aelig;lg Fabrikat</option>"
                strSQL = "SELECT * FROM fabrikat"
                set database3 = con.execute(strSQL)
                while not database3.eof
                  response.write "<option value='" & database3("Fabrikatnavn") & "'>" & database3("Fabrikatnavn") & "</option>"
                  database3.movenext
                wend
                Response.write "</select></tr>"
            end if
            if database2(i).name = ("Specifikationer") then
                Response.write "<tr><td><div align='right'>" & str & " : </td><td><input type='checkbox' checked name='" & database2(i).name & "' value=''></tr>"
            end if
            if database2(i).name = ("Disabled") then
                Response.write "<tr><td><div align='right'>" & str & " : </td><td><input type='checkbox' name='" & database2(i).name & "' value=''></tr>"
            end if
            else
            Response.write "<tr><td><div align='right'>" & str & " : </td><td><INPUT NAME=" & database2(i).name & " TYPE='text' VALUE=''></tr>"
          end if
      next
    end if
    response.write "<td></td></tr>"
      response.write "<tr><td colspan='3'><div align='right'><form name='action' action='vareopret.asp?mode=OK&typevalgt=" & request("typevalgt") & "&varenr=" & request("varenr") & "' METHOD='POST'>"
      response.write "<INPUT TYPE='submit' NAME='Action' VALUE='Opret vare'>"
      response.write "</td></form>"
  end if
end if
%>

Herefter skal den tælle hvor mange felter der er trukket ud af databasen og finde det der er indtastet i felterne, men endnu kan den ikke engang finde ud af hvor mange felter der er med denne stykke kode :

if request.querystring("mode") = "OK" then
Response.write "Mode : " & request.querystring("mode")
Response.write "Antal = " & Request.action.Count-1

For n = 1 To Request.Form.Count-1
  Session(Request.Form.Key(n)) = request.form(Request.Form.Key(n))
  response.write "Session udskrevet i rækkefølge " & Session(cParam(Request.Form.Item(n))) & "<br>" & cParam(Session(n)) & "<br>" & request.form("Varenr") & "<br>"
next


Nogen der kan HJÆÆLLLPPPEEEEE???
Avatar billede wanda13 Nybegynder
17. august 2003 - 20:02 #1
Ups glemte helt spørgsmålet...

I den øverste del, sende den 3 variabler med ned mode=ok, varnr og typevalgt, men når den kommer ned til det nederste, kan jeg med response.write kun få oplyst at mode=ok, resten har ingen værdi, hvilket er et fejl, da de øvrige jo er indtastet i formen i den øverste kode.
Det største problem her er så, at dette : Request.Form.Count-1 = 0 hvorfor det, da formen læser det fra en database med 13 felter i, den udskriver dem fint i det ovenstående, men kan ikke læse variablerne som er blevet indtastet, når man kommer ned i den nederste kode hvorfor?

Nogen som kan hjælpe?

På forhånd 1000 mange gange TAK :-)
Avatar billede ellebaek Nybegynder
18. august 2003 - 21:05 #2
kan du ikke sende db + asp siden og den side du sender fra til mig, så kan jeg kigge på det, det er lidt nemmere at overskue hvis man sidder med det...

Min email:
jens@mail.zix.dk
Avatar billede wanda13 Nybegynder
19. august 2003 - 17:21 #3
<!--#include file="../ssi/database.asp"-->
<!--#include file="ssi/trans.asp"-->
<html>
<%
Function cParam(ByVal Param)
    cParam = Param
    If IsNumeric(Param) = False Then
          cParam = "'" & Param & "'"
    End If
End Function

For n = 1 To Request.Form.Count - 1
  Session(Request.Form.Key(n)) = request.form(Request.Form.Key(n))
  response.write "Session udskrevet i rækkefølge " & Session(cParam(Request.Form.Item(n))) & "<br>" & cParam(Session(n)) & "<br>" & request.form("Varenr") & "<br>"
next

if request.querystring("mode") = "OK" then
    response.write "Type : " & request.form("typenavn")
  ' Kontrol og gem af data
  if Session("Fabrikat") <> "V&aelig;lg fabrikat" then
      if Session("Varenr") <> " " then
        if Session("Pris") <> " " then
            strSQL2 = "SELECT * FROM " & Session("varetingen") & " WHERE '" & Session.form("Varenr") & "'=Varenr"
            Set database9 = con.Execute(strSQL2)
            if (database9.Fields.Count -1) = 0 then
              response.write "Varenr. eksistere allerede - Beklager"
              else

              dim item
              For item = 0 to request.form.count-1
              Response.write item & ". item = " & Request.Form(item)
              next
              Response.write "Antal = " & item & "<br><br><br><br><br><br>"


              For n = 1 To Request.Form.Count - 1
              If strKolonne = "" Then
                    strKolonne =  Request.Form.Key(n)
                  response.write "1. værdi = " & strKolonne & "<br>"
                Else
                    strKolonne = strKolonne & ", " & Request.Form.Key(n)
                  response.write n & ". værdi = " & strKolonne & "<br>"
                End If

              If strKolonneVaerdi = "" Then
                    strKolonneVaerdi = cParam(nChar(Request.Form.Item(n)))
                Else
                    strKolonneVaerdi = strKolonneVaerdi & ", " & cParam(Request.Form.Item(n))
              End If
              Response.Write Request.Form.Item(n) & "<br>"
              Next

              SqlQ = "Insert Into " & request("typenavn") & "(" & strKolonne & ") Values(" & strKolonneVaerdi & ")"
              response.write SqlQ
'              con.execute(SqlQ)
              Response.write "Du har nu gemt varen : " & request.form("Varenr") & " i databasen"
            end if
          else
            Response.write "Pris skal udfyldes"
        end if
        else
        Response.write "Fabrikat skal vælges, og varenr og pris skal udfyldes"
      end if
    else
      Response.write "Fabrikat skal vælges, og varenr og pris skal udfyldes"
  end if
  else
%>

<body>

<div align="center"><center>
<table border="0" width="600" cellspacing="0" cellpadding="3" style="border-left: 1px solid rgb(0,0,0); border-right: 1px solid rgb(0,0,0); border-top: 1px solid rgb(0,0,0); border-bottom: 2px solid rgb(0,0,0)">
<tr>
<td width="100%" bgcolor="#004000"><p align="center"><font size="4" color="#FFFFFF"><b>Opret vare</b></font></td>
</tr>
<tr align="center">
<td width="100%">
<table border="0" width="100%" cellspacing="0" cellpadding="2" style="color:#004000">
<tr>
<td colspan="4" valign="middle" align="center" colspan="2"><font size="3"><br>
Her kan du oprette en vare<br><br>
</font></td>
</tr>
<tr align="center">
  <td colspan="4">
       
<form name='form1' action='<%=request.serverVariables("SCRIPT_NAME")%>' method='post'>
<font size="6"></font>Type : &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<select onChange="document.form1.submit()" name="varetingen" size="1">
<option>V&aelig;lg Type</option>
<option value="Blink"<%if request("varetingen") = "Blink" then response.write "selected" %>>Blink</option>
<option value="Bly"<%if request("varetingen") = "Bly" then response.write "selected" %>>Bly</option>
<option value="Fiskehjul"<%if request("varetingen") = "Fiskehjul" then response.write "selected" %>>Fiske hjul</option>
<option value="Fluer"<%if request("varetingen") = "Fluer" then response.write "selected" %>>Fluer</option>
</select><br>

<%   
if request("varetingen") <> "" then
      if (request("varetingen") <> "" AND request("varetingen") <> "Vælg varenr") then
 
    strSQL2 = "SELECT * FROM " & Request("varetingen") & " "
    Set database2 = con.Execute(strSQL2)
    'her tæller vi hvor mange felter der er udtrukket i recordsettet
    iFieldCount = database2.Fields.Count - 1

'    if not database2.eof then
    response.write"</form></tr><tr><td colspan='3'><center><br>Indtast vare oplysninger<br></td>"
      ' her gennemløber vi de felter der er udtrukket
      for i = 0 to iFieldCount
          str = Replace(database2(i).name, "aa", "&aring;")
          str = Replace(str, "oe", "&oslash;")
          str = Replace(str, "ae", "&aelig;")
          str = Replace(str, "Aa", "&Aring;")
          str = Replace(str, "Ae", "&AElig;")
          str = Replace(str, "Oe", "&Oslash;")

          if (database2(i).name = ("Fabrikat") OR database2(i).name = ("Specifikationer") OR database2(i).name = ("Tilbud") ) then
            if database2(i).name = ("Fabrikat") then
                Response.write "<tr><td><div align='right'>" & str & " : </td><td><select name='fabrikat' size='1'>"
                Response.write "<option>V&aelig;lg Fabrikat</option>"
                strSQL = "SELECT * FROM fabrikat"
                set database3 = con.execute(strSQL)
                while not database3.eof
                  response.write "<option value='" & database3("Fabrikatnavn") & "'>" & database3("Fabrikatnavn") & "</option>"
                  database3.movenext
                wend
                Response.write "</select></tr>"
            end if
            if database2(i).name = ("Specifikationer") then
                Response.write "<tr><td><div align='right'>" & str & " : </td><td><input type='checkbox' checked name='" & database2(i).name & "' value=''></tr>"
            end if
            else
            Response.write "<tr><td><div align='right'>" & str & " : </td><td><INPUT NAME=" & database2(i).name & " TYPE='text' VALUE=''></tr>"
          end if
      next
'    end if
    response.write "<td></td></tr>"
    response.write "<tr><td colspan='3'><div align='right'>"
    response.write "<FORM ACTION='vareopret.asp?mode=ok&typenavn=" & request("varetingen") & "' METHOD='POST'><input type='submit' value='Opret vare'></td>"
  end if
end if
%>
<%
end if
%>
</tr>
</body>
</html>


Dette er hele filen og det er sig selv den kalder...
Avatar billede wanda13 Nybegynder
19. august 2003 - 20:45 #4
I databasen er der disse 4 tabeller :
Blink
Bly
Fiskehjul
Fluer

Hver af disse tabeller har en rækker oplysninger :
Varenr
Avatar billede wanda13 Nybegynder
19. august 2003 - 20:48 #5
Tabller for hver vare i databasen :
Fabrikat (type : tekst)
Varenr (type : tekst)
Specifikationer  (type : Ja/Nej)
Pris  (type : tal)
Avatar billede ellebaek Nybegynder
19. august 2003 - 21:14 #6
kigger på det, og vender snart tilbage...!
Avatar billede ellebaek Nybegynder
19. august 2003 - 23:06 #7
Jeg er rimelig sikker på det virker som det skal nu...

Se lige om det er som det skal være...
http://ellebaek.dyndns.dk/exp/387699/
Avatar billede ellebaek Nybegynder
19. august 2003 - 23:47 #8
Jeg slukker min computer nu, men den er online i morgen i tidsrummet 10-23 regner jeg med...

Så kan du se om det er som det skal være der...!
Avatar billede wanda13 Nybegynder
20. august 2003 - 19:55 #9
Ja det er sådan takker, sender du den med mail samt opretter et svar eller?
Avatar billede ellebaek Nybegynder
20. august 2003 - 21:49 #10
her er et svar...

Og mailen er sendt..!
Avatar billede wanda13 Nybegynder
21. august 2003 - 00:18 #11
Takker :-)
Avatar billede ellebaek Nybegynder
21. august 2003 - 09:20 #12
Anytime.
Takker for pointz...

..Ellebæk!
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