Avatar billede fc-dong Nybegynder
19. november 2007 - 19:43 Der er 13 kommentarer og
1 løsning

Vis flere ID samtidigt

Jeg har et lille problem med en side.
Når man har en liste med en chek box ud for hver post, og man gerne vil kunne krydse flere chek boxe af på en gang, og de så når man trykke på form knappen "Send" så skal den på en ny side, vise alle dem som man har krydset af på den forrige side.
Jeg kan uden problemer vise en ID, men lige så snart jeg krydser mere end en af, så laver den fejl på siden
Jeg bruger dette udtræk på modtager siden
---------------------------------------------
<%
Dim rsTest
Dim rsTest_cmd
Dim rsTest_numRows

Set rsTest_cmd = Server.CreateObject ("ADODB.Command")
rsTest_cmd.ActiveConnection = MM_ConnStenstrup_STRING
rsTest_cmd.CommandText = "SELECT * FROM Kartotek WHERE kartotekID = ?"
rsTest_cmd.Prepared = true
rsTest_cmd.Parameters.Append rsTest_cmd.CreateParameter("param1", 5, 1, -1, rsTest__MMColParam) ' adDouble

Set rsTest = rsTest_cmd.Execute
rsTest_numRows = 0
%>
--------------------------------------
Og får denne fejl når jeg vælger mere end en ID
-------------------------------------
ADODB.Command error '800a0d5d'

Application uses a value of the wrong type for the current operation.

/Modul/nyhedsbrevoversigt.asp, line 52
-----------------------------
Håber på lidt hjælp tak
Avatar billede cpufan Juniormester
19. november 2007 - 20:12 #1
rsTest_cmd.CommandText = "SELECT * FROM Kartotek WHERE kartotekID IN "& dinvar
Avatar billede fc-dong Nybegynder
20. november 2007 - 19:32 #2
Hvad er dinvar????
Avatar billede fc-dong Nybegynder
26. november 2007 - 19:09 #3
Er der ingen som kan hjælpe med dette spørgsmål?
Avatar billede cpufan Juniormester
27. november 2007 - 01:13 #4
dinvar er helt korrekt:

( checkbox1, checkbox2, checkbox3, osv)

altså en "liste med alle de afkrydsede checkboxe" i en parantes separeret med komma
så kan din sql sætning laves som ovenstående med brug af IN

skal du bruge hjælp til at lave din "liste"?
Avatar billede fc-dong Nybegynder
27. november 2007 - 07:46 #5
Ja tak, det ville være rart. Mit problem er, at jeg bruger Dreamweaver CS3, og der har de åbennart lavet lidt om på måde at skrive ens SQL på.
På den side hvor min chekbokse er, der laver jeg en repeat region og så kommer alle nyhederne frem. Der har man så mulighed for at vælge vinge de de nyheder af man gerne vil have vist på en anden side. Jeg bruger Get metoden til at overfører, men det er her det går galt, når jeg vælger mere end en nyhed.
Jeg er først hjemme fra arbejdet kl. 17 i dag, men så vil jeg lige prøve at loade min asp kode op, så du kan se hvordan jeg gør det :-)
Avatar billede fc-dong Nybegynder
27. november 2007 - 16:57 #6
Her er den SQL som ikke virker
----------------------
<%
Dim rsTest__MMColParam
rsTest__MMColParam = "1 & 3"
If (Request.Form("valg")  <> "") Then
  rsTest__MMColParam = Request.Form("valg") 
End If
%>
<%
Dim rsTest
Dim rsTest_cmd
Dim rsTest_numRows

Set rsTest_cmd = Server.CreateObject ("ADODB.Command")
rsTest_cmd.ActiveConnection = MM_ConnStenstrup_STRING
rsTest_cmd.CommandText = "SELECT * FROM Kartotek WHERE kartotekID IN "& valg
'rsTest_cmd.CommandText = "SELECT * FROM Kartotek WHERE kartotekID = ?"
rsTest_cmd.Prepared = true
rsTest_cmd.Parameters.Append rsTest_cmd.CreateParameter("param1", 5, 1, -1, rsTest__MMColParam) ' adDouble

Set rsTest = rsTest_cmd.Execute
rsTest_numRows = 0
%>
----------------------
og her er fejlkoden i Explore
ADODB.Command error '800a0d5d'

Application uses a value of the wrong type for the current operation.

/Modul/nyhedsbrevoversigt.asp, line 53
Avatar billede fc-dong Nybegynder
27. november 2007 - 16:57 #7
Dette er line 53
rsTest_cmd.Parameters.Append rsTest_cmd.CreateParameter("param1", 5, 1, -1, rsTest__MMColParam) ' adDouble
Avatar billede cpufan Juniormester
28. november 2007 - 20:38 #8
<%
Dim rsTest__MMColParam
rsTest__MMColParam = "1 & 3"
If (Request.Form("valg")  <> "") Then
  rsTest__MMColParam = Request.Form("valg") 
End If
%>
<%
Dim rsTest
Dim rsTest_cmd
Dim rsTest_numRows

streng = "("
for each x in request.querystring

streng = streng & x & ","
next
streng = streng & ")"


Set rsTest_cmd = Server.CreateObject ("ADODB.Command")
rsTest_cmd.ActiveConnection = MM_ConnStenstrup_STRING
rsTest_cmd.CommandText = "SELECT * FROM Kartotek WHERE kartotekID IN "& streng
Set rsTest = rsTest_cmd.Execute
rsTest_numRows = 0
%>
Avatar billede fc-dong Nybegynder
29. november 2007 - 18:04 #9
Jeg får stadigvæk denne fejl
---------------------
Microsoft JET Database Engine error '80040e14'

Syntax error (missing operator) in query expression 'kartotekID IN ()'.

/Modul/nyhedsbrevoversigt.asp, line 60
--------------------------------
<%
Dim rsTest__MMColParam
rsTest__MMColParam = "1"
If (Request.Form("valg")  <> "") Then
  rsTest__MMColParam = Request.Form("valg") 
End If
%>
<%
Dim rsTest
Dim rsTest_cmd
Dim rsTest_numRows

streng = "("
for each valg in request.querystring

streng = streng & valg & ","
next
streng = streng & ")"


Set rsTest_cmd = Server.CreateObject ("ADODB.Command")
rsTest_cmd.ActiveConnection = MM_ConnStenstrup_STRING
rsTest_cmd.CommandText = "SELECT * FROM Kartotek WHERE kartotekID IN "& streng
Set rsTest = rsTest_cmd.Execute
rsTest_numRows = 0
%>
-----------------
Linje 60 er:
Set rsTest = rsTest_cmd.Execute

Jeg har erstattet dine x med valg som er navnet på den chekboks jeg krydser af
Avatar billede cpufan Juniormester
29. november 2007 - 19:23 #10
må jeg se koden til din form-side
Avatar billede fc-dong Nybegynder
29. november 2007 - 19:39 #11
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<!--#include virtual="/Connections/ConnStenstrup.asp" -->
<%
' *** Restrict Access To Page: Grant or deny access to this page
MM_authorizedUsers="admin"
MM_authFailedURL="../Modul/fejl.asp"
MM_grantAccess=false
If Session("MM_Username") <> "" Then
  If (false Or CStr(Session("MM_UserAuthorization"))="") Or _
        (InStr(1,MM_authorizedUsers,Session("MM_UserAuthorization"))>=1) Then
    MM_grantAccess = true
  End If
End If
If Not MM_grantAccess Then
  MM_qsChar = "?"
  If (InStr(1,MM_authFailedURL,"?") >= 1) Then MM_qsChar = "&"
  MM_referrer = Request.ServerVariables("URL")
  if (Len(Request.QueryString()) > 0) Then MM_referrer = MM_referrer & "?" & Request.QueryString()
  MM_authFailedURL = MM_authFailedURL & MM_qsChar & "accessdenied=" & Server.URLEncode(MM_referrer)
  Response.Redirect(MM_authFailedURL)
End If
%>
<%
Dim rsStenstrup
Dim rsStenstrup_cmd
Dim rsStenstrup_numRows

Set rsStenstrup_cmd = Server.CreateObject ("ADODB.Command")
rsStenstrup_cmd.ActiveConnection = MM_ConnStenstrup_STRING
rsStenstrup_cmd.CommandText = "SELECT * FROM Brodtekst"
rsStenstrup_cmd.Prepared = true

Set rsStenstrup = rsStenstrup_cmd.Execute
rsStenstrup_numRows = 0
%>
<%
Dim rsKoberkartotek
Dim rsKoberkartotek_cmd
Dim rsKoberkartotek_numRows

Set rsKoberkartotek_cmd = Server.CreateObject ("ADODB.Command")
rsKoberkartotek_cmd.ActiveConnection = MM_ConnStenstrup_STRING
rsKoberkartotek_cmd.CommandText = "SELECT * FROM Kartotek"
rsKoberkartotek_cmd.Prepared = true

Set rsKoberkartotek = rsKoberkartotek_cmd.Execute
rsKoberkartotek_numRows = 0
%>
<%
Dim Repeat1__numRows
Dim Repeat1__index

Repeat1__numRows = -1
Repeat1__index = 0
rsKoberkartotek_numRows = rsKoberkartotek_numRows + Repeat1__numRows
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><!-- InstanceBegin template="/Templates/modulstartside.dwt" codeOutsideHTMLIsLocked="false" -->
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<!-- InstanceBeginEditable name="doctitle" -->
<title>Steenstrup &amp; Partnere Ejedomme</title>
<!-- InstanceEndEditable -->
<!-- InstanceBeginEditable name="head" --><!-- InstanceEndEditable -->
<style type="text/css">
<!--
body,td,th {
    font-family: Verdana, Arial, Helvetica, sans-serif;
}
-->
</style>
<link href="../Style/stenstrup.css" rel="stylesheet" type="text/css" />
</head>

<body><!-- DHTML Menu Builder Loader Code START -->
<div id="dmbri" style="position:absolute;">
<img src="javamenu/dmb_i.gif" name="dmbif" width="1" height="1" alt="" />
<img src="javamenu/dmb_m.gif" name="dmbjs" width="1" height="1" alt="" />
</div>
<script type="text/javascript">
var rimPath=null;var rjsPath=null;var rPath2Root=null;function InitRelCode(){var iImg;var jImg;var tObj;if(!document.layers){iImg=document.images['dmbif'];jImg=document.images['dmbjs'];tObj=jImg;}else{tObj=document.layers['dmbri'];if(tObj){iImg=tObj.document.images['dmbif'];jImg=tObj.document.images['dmbjs'];}}if(!tObj){window.setTimeout("InitRelCode()",700);return false;}rimPath=_gp(iImg.src);rjsPath=_gp(jImg.src);rPath2Root=rjsPath+"../../";return true;}function _purl(u){return xrep(xrep(u,"%%REP%%",rPath2Root),"\\","/");}function _fip(img){if(img.src.indexOf("%%REL%%")!=-1) img.src=rimPath+img.src.split("%%REL%%")[1];return img.src;}function _gp(p){return p.substr(0,p.lastIndexOf("/")+1);}function xrep(s,f,n){if(s) s=s.split(f).join(n);return s;}InitRelCode();
</script>
<script type="text/javascript">
/* <![CDATA[ */function LoadMenus() {if(!rjsPath){window.setTimeout("LoadMenus()", 10);return false;}var navVer = navigator.appVersion;
if(navVer.substr(0,3) >= 4)
if((navigator.appName=="Netscape") && (parseInt(navigator.appVersion)==4)) {
document.write('<' + 'script type="text/javascript" src="' + rjsPath + 'nsmenu.js"><\/script\>');
} else {
document.write('<' + 'script type="text/javascript" src="' + rjsPath + 'iemenu.js"><\/script\>');
}return true;}LoadMenus();/* ]]> */</script>
<!-- DHTML Menu Builder Loader Code END -->
<TABLE WIDTH=960 BORDER=0 align="center" CELLPADDING=0 CELLSPACING=0>
                     
                      <TR>
                        <TD height="23">&nbsp;</TD>
                        <TD height="23" colspan="2"><div align="center">Administrationsside for Stenstrup &amp; Partnere</div></TD>
                        <TD height="23">&nbsp;</TD>
                      </TR>
                      <TR>
                        <TD width="17" height="23"><IMG SRC="../gfx/oursport_stregkasse_50.jpg" ALT="" name="menu" WIDTH=17 HEIGHT=23 hspace="0" vspace="0" border="0" id="menu"></TD>
                        <TD height="23" colspan="2" background="../gfx/oursport_stregkasse_51.jpg"><div align="center"><img src="../gfx/oursport_stregkasse_51.jpg" name="menu1" width="12" height="23" id="menu1" /></div></TD>
                        <TD width="13" height="23"><IMG SRC="../gfx/oursport_stregkasse_53.jpg" ALT="" WIDTH=13 HEIGHT=23 hspace="0" vspace="0"></TD>
                      </TR>
                      <TR>
                        <TD width="17" background="../gfx/oursport_stregkasse_56.jpg"><IMG SRC="../gfx/oursport_stregkasse_56.jpg" WIDTH=17 HEIGHT=10 ALT=""> </TD>
                        <TD colspan="2" valign="top"><table width="930" border="0" cellspacing="0" cellpadding="0">
                          <tr>
                            <td>&nbsp;</td>
                          </tr>
                          <tr>
                            <td>&nbsp;</td>
                          </tr>
                          <tr>
                            <td><!-- InstanceBeginEditable name="Tekst1" -->
                              <table width="930" border="0" cellspacing="0" cellpadding="0">
                                <tr>
                                  <td><table width="1342" border="0" cellspacing="2" cellpadding="2">
                                    <tr>
                                      <td width="40" class="noter">&nbsp;</td>
                                      <td width="180" class="noter"><div align="left">Navn</div></td>
                                      <td width="180" class="noter"><div align="left">Adresse</div></td>
                                      <td width="30" class="noter"><div align="left">Post</div></td>
                                      <td width="100" class="noter"><div align="left">By</div></td>
                                      <td width="150" class="noter"><div align="left">Tlf/mobil</div></td>
                                      <td width="120" class="noter"><div align="left">E-mail</div></td>
                                      <td width="140" class="noter"><div align="left">Område</div></td>
                                      <td width="50" class="noter"><div align="center">Ændre</div></td>
                                      <td width="50" class="noter"><div align="center">Slet</div></td>
                                    </tr>
                                    <tr>
                                      <td width="40">&nbsp;</td>
                                      <td width="200">&nbsp;</td>
                                      <td width="200">&nbsp;</td>
                                      <td width="30">&nbsp;</td>
                                      <td width="100">&nbsp;</td>
                                      <td width="150">&nbsp;</td>
                                      <td width="120">&nbsp;</td>
                                      <td width="140">&nbsp;</td>
                                      <td width="50">&nbsp;</td>
                                      <td width="50">&nbsp;</td>
                                    </tr>
                                   
                                    <tr>
                                      <td colspan="10" valign="top"><form id="kartotek" name="kartotek" method="post" action="nyhedsbrevoversigt.asp">
                                        <%
While ((Repeat1__numRows <> 0) AND (NOT rsKoberkartotek.EOF))
%>
                                      <table width="1292" border="0" cellspacing="2" cellpadding="2">
                                            <tr>
                                              <td width="40" class="noter"><label>
                                                <input <%If (CStr(rsKoberkartotek.Fields.Item("kartotekID").Value) = CStr("tt")) Then Response.Write("CHECKED") : Response.Write("")%> type="checkbox" value="<%=rsKoberkartotek.Fields.Item("kartotekID")%>" name="valg">
                                              </label></td>
                                              <td width="40" class="noter"><label>
                                                <div align="left">&nbsp;<%=(rsKoberkartotek.Fields.Item("fornavn").Value)%>&nbsp;<%=(rsKoberkartotek.Fields.Item("efternavn").Value)%></div></td>
                                              <td width="180" class="noter"><%=(rsKoberkartotek.Fields.Item("adresse").Value)%></td>
                                              <td width="30" class="noter"><div align="left"><%=(rsKoberkartotek.Fields.Item("postnummer").Value)%></div></td>
                                              <td width="100" class="noter"><div align="left"><%=(rsKoberkartotek.Fields.Item("bynavn").Value)%></div></td>
                                              <td width="100" class="noter"><div align="left"><%=(rsKoberkartotek.Fields.Item("telfonprivat").Value)%><br />
                                                      <%=(rsKoberkartotek.Fields.Item("telefonmobil").Value)%><br />
                                              </div></td>
                                              <td width="120" class="noter"><div align="left"><%=(rsKoberkartotek.Fields.Item("emailadresse").Value)%></div></td>
                                              <td width="140" class="noter"><div align="left"><%=(rsKoberkartotek.Fields.Item("projektomrade").Value)%></div></td>
                                              <td width="50" class="noter"><div align="center" >Ændre</div></td>
                                              <td width="50" class="noter"><div align="center" >Slet</div></td>
                                            </tr>
                                            <tr>
                                              <td width="40">&nbsp;</td>
                                              <td width="40">&nbsp;</td>
                                              <td width="200">&nbsp;</td>
                                              <td width="200">&nbsp;</td>
                                              <td width="30" class="noter">&nbsp;</td>
                                              <td width="100" class="noter">&nbsp;</td>
                                              <td width="100" class="noter">&nbsp;</td>
                                              <td width="120" class="noter">&nbsp;</td>
                                              <td width="140" class="noter">&nbsp;</td>
                                              <td width="50" class="noter">&nbsp;</td>
                                              <td width="50" class="noter">&nbsp;</td>
                                            </tr>
                                          </table>
                                          <%
  Repeat1__index=Repeat1__index+1
  Repeat1__numRows=Repeat1__numRows-1
  rsKoberkartotek.MoveNext()
Wend
%>
<p>
                                          <label>
                                          <input type="submit" name="button" id="button" value="Til siden - Send nyhedsbrev" />
                                          </label>
                                        </p>
                                      </form></td>
                                    </tr>
                                  </table></td>
                                </tr>
                              </table>
                            <!-- InstanceEndEditable --></td>
                          </tr>
                        </table>
                        </TD>
                        <TD width="13" background="../gfx/oursport_stregkasse_59.jpg">&nbsp;</TD>
                      </TR>
                      <TR>
                        <TD width="17" height="19"><IMG SRC="../gfx/oursport_stregkasse_68.jpg" WIDTH=17 HEIGHT=19 ALT=""></TD>
                        <TD height="19" colspan="2" background="../gfx/oursport_stregkasse_69.jpg">&nbsp;</TD>
                        <TD width="13" height="19"><IMG SRC="../gfx/oursport_stregkasse_71.jpg" WIDTH=13 HEIGHT=19 ALT=""></TD>
                      </TR>
                     
</TABLE>

</body>
<!-- InstanceEnd --></html>
<%
rsStenstrup.Close()
Set rsStenstrup = Nothing
%>
<%
rsKoberkartotek.Close()
Set rsKoberkartotek = Nothing
%>
Avatar billede cpufan Juniormester
29. november 2007 - 21:20 #12
ok

ret dette her:

streng = "("
for each valg in request.querystring

streng = streng & valg & ","
next
streng = streng & ")"


til:

streng = "("
for each valg in request.form

streng = streng & valg & ","
next
streng = streng & ")"
Avatar billede fc-dong Nybegynder
29. november 2007 - 21:30 #13
Den laver stadigvæk sammen fejl...
Microsoft JET Database Engine error '80040e10'

No value given for one or more required parameters.

/Modul/nyhedsbrevoversigt.asp, line 59
Avatar billede fc-dong Nybegynder
04. december 2007 - 18:33 #14
Jeg lukker spørgsmålet. Det kommer sku aldrigtil at virke :-)
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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