19. juni 2003 - 18:57Der er
20 kommentarer og 1 løsning
Nu er jeg langt ude
Med stor hjælp herfra fik jeg mit system med at skrive til database til at virke. MEN når jeg nu kun vil udskrive mit bestillingsnr ("id")hvis feltet ("best") er udfyldt hvordan gør jeg så ? Jeg har prøvet med : % if ObjRS("best")<>""then %><%= ObjRS ("best")%><% end if %> <%Response.Write"<tr><td>" & objRS("id") &"</td>" %>
Men det virker selvfølgelig ikke! Og hvordan sletter jeg indtasterninger i "best" når bestilling bliver sendt?
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Jeg får nu et : Microsoft VBScript compilation error '800a0400'
Expected statement
/shoppingbasket.asp, line 38
<% if isNull(ObjRS("best")) = false then ^
Her er hele smøren så i kan se hvad jeg laver. Det var ellers rigtigt nok at jeg kun ville have "id" ud hvis der er noget i "best". Som det måske vil fremgå er det til en 'indkøbskurv'
<% Dim objConndrejebase Set objConndrejebase = Server.CreateObject ("ADODB.Connection") objConndrejebase.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\manniken.dk\www\config\datasources\drejebase.mdb" objConndrejebase.Open ()
Dim objRS Set objRS = Server.CreateObject("ADODB.Recordset") objRS.Open "SELECT id, d_min,l,e, insert,price,drawing,image, best FROM dreje_indv",objConndrejebase %>
<%
strSQL = "Insert into dreje_indv (best) values('" & Request.Form("order") & " ' )" objConndrejebase.Execute(strSQL) %><% Set objRS=objConndrejebase.Execute("SELECT id, d_min, l, e, insert, price, drawing, image, best FROM dreje_indv") Do while Not objRS.EOF %> <table width="122" border="1" cellspacing="2" cellpadding="0"> <tr> <td> <%
<% if isNull(ObjRS("best")) = false then %> <%= ObjRS ("best")%> <% end if %> <%Response.Write"<tr><td>" & objRS("id") &"</td>" %> </tr> </table>
<p> <%
objRS.Movenext Loop
objRS.Close Set objRS = Nothing
objConndrejebase.Close Set objConndrejebase = Nothing %></p></p> </body>
Ok, hvordan burde jeg da have lavet det ? Som det ses er ASP nyt for mig! Det jeg drømmer om at lave er en bestillingsside(uden betalingsdel) hvor det man bestiller, og kun det, bliver skrevet ud på siden evt med antal i et tekstfelt så man kan rette i det .
Det kommer lidt an på hvad man ønsker. Hvis du vil havde en lang streng med , i mellem så kan man netop udnyttet dog skal , , , så fjernes hvis der ikke er tal imellem.
Hvis man vil havde hver vare for sig selv kan man ligge ID på varen ind i et heidden felt og så giver ændre navet på order inputet til også at bestå af ID for varen. <input type="text" name="order<%=rs("id")%>" size="5"> Så skal den som hndter loope gennem alle de ID som er og tjekke på om der er indtastet noget i et felt.
Tak for svaret, pointene må være dine. Men før jeg lukker ville jeg lige spørge; Har jeg forstået det rigtigt at jeg kan lave det sådan: <input type="text" name=order<%=objRS("id")%>" size="5"> <input type="hidden" name="id">
Og så bruge dit If isNull...........
Jeg prøver naturligvis men jeg vile meget gerne høre din kommentar , tak
På den side som tjekker om varen er krydset af lavet du det sådan her:
IDList = Request.Form("id") 'Det giver nemlig en liste med alle vare idArr = split(IDList,",") 'Laver et array med alle ID
'Tjek om order<%=id%> er udfyldt
for i = lbound(idArr) to ubound(idArr) antal = Request.Form("order" & Trim(idArr(i))) if antal <> "" then 'Der er angivet et antal af denne vare vareID = idArr(i)
'Så har du vareID og antal du kan gemme i DBen elle
Response.write "Der er bestil varen : " & vareID & " og antalet er " & antal & "<br>" end if next
Det bliver bedre og bedre! Den skriver dog intet ud lige nu men det løser sig måske ?
Jeg har følgende lige nu:
Dim objRS Set objRS = Server.CreateObject("ADODB.Recordset") objRS.Open "SELECT id, d_min,l,e, insert,price,drawing,image, best FROM dreje_indv",objConndrejebase %>
<%
strSQL = "Insert into dreje_indv (best) values('" & Request.Form("order") & " ' )" objConndrejebase.Execute(strSQL) %><% Set objRS=objConndrejebase.Execute("SELECT id, d_min, l, e, insert, price, drawing, image, best FROM dreje_indv") Do while Not objRS.EOF %> <% IDList = Request.Form("id") 'Det giver nemlig en liste med alle vare idArr = split(IDList,",") 'Laver et array med alle ID
for i = lbound(idArr) to ubound(idArr) antal = Request.Form("order" & Trim(idArr(i))) if antal <> "" then 'Der er angivet et antal af denne vare vareID = idArr(i) 'Så har du vareID og antal du kan gemme i DBen elle
Response.write "Der er bestil varen : " & vareID & " og antalet er " & antal & "<br>" end if next %>
<%
objRS.Movenext Loop
objRS.Close Set objRS = Nothing
objConndrejebase.Close Set objConndrejebase = Nothing %> </body>
Hvilken funktion har 'next' efter end if ? Jeg har er par relaterede spørgsmål, kan jeg fyre dem af her med ekstra point eller er det bedre at starte et nyt spørgsmål ?
Jeg må hellere give dig points mens jeg husker det. Det eneste pro blem jeg har lige nu er at den skriver ligeså mange linier som der er felter i databasen
Synes godt om
Ny brugerNybegynder
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.