ff
Nybegynder
21. januar 2004 - 22:11
Der er
15 kommentarer og 1 løsning
Select box til billede
Er det muligt at få hjælp til at få en selectbox så man kan få et billede "hægtet" til tekst. Paster lidt kode, som man måske kan lave om på: strSQL = "Insert into news (dato, forfatter, overskrift, email, tekst) values ('" & DatePart("D",Now()) & "-" & DatePart("M",Now()) & "-" & DatePart("YYYY",Now()) & "','" & Session("forfatter") & "','" & Request.Form("overskrift") & "','" & Session("email") & "','" & Request.Form("tekst") & "')" Conn.Execute(strSQL) Conn.Close Set Conn = Nothing Response.Redirect "opret.asp" end if elseif strMode = "ret" then if Session("Brugeradgang") = True then Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; " DSN = DSN & "DBQ=" & Server.MapPath("database.mdb") Conn.Open DSN strQuery = "SELECT * FROM news WHERE id = " & Request.Querystring("news_id") & "" Set rs = Conn.Execute(strQuery) %>
Annonceindlæg fra Kingston Technology
21. januar 2004 - 22:51
#1
hmm.. sådan forstår jeg det:
Du vil ha' et billede, hægtet til teksten man kan se, når man klikker på "pil ned" i selectboxen. Korrekt?
Hvis ja, prøv i (D)HTML kategorien først:
http://www.eksperten.dk/spm/Programmering/DHTML/ Der kan du få noget JavaScript kode, til at vise billede og tekst. Det kan man nemlig ikke normalt, så man skal lave en selecbox selv.
Når du har fået JavaScript koden, kan du stille spm om hvordan man integrerer det i asp koden.
Hvis jeg har misforstået dig, må du meget undskylde.
21. januar 2004 - 23:42
#2
Som jeg forstår det vil du skrive en tekst, og under den tekst kan man så vælge et billede fra en select box. Dette billede skal så ligges ind i databasen sammen med teksten.. strSQL = "Insert into news (dato, forfatter, overskrift, email, tekst, billede) values ('" & DatePart("D",Now()) & "-" & DatePart("M",Now()) & "-" & DatePart("YYYY",Now()) & "','" & Session("forfatter") & "','" & Request.Form("overskrift") & "','" & Session("email") & "','" & Request.Form("tekst") & "','"&request.form("billede")&"')" Conn.Execute(strSQL) Conn.Close Set Conn = Nothing Response.Redirect "opret.asp" end if elseif strMode = "ret" then if Session("Brugeradgang") = True then Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; " DSN = DSN & "DBQ=" & Server.MapPath("database.mdb") Conn.Open DSN strQuery = "SELECT * FROM news WHERE id = " & Request.Querystring("news_id") & "" Set rs = Conn.Execute(strQuery) %> alle dine felter... du sætter values="<%=rs.fields("feltnavn")%>" Select boxen laver du sådan her: <% streng = "billede1.jpg, billede2.jpg" 'osv. alle dine billeder sepereret med , myarr = split(streng,", ") response.write "<SELECT NAME=""billede"">" for i = 0 to UBound(myarr) if rs.fields("billede") = myarr(i) then response.write "<option SELECTED>" & myarr(i) else response.write "<option>" & myarr(i) next response.write "</SELECT>"
21. januar 2004 - 23:42
#3
og så lige en %> til sidst efter response.write "</select>"
ff
Nybegynder
21. januar 2004 - 23:43
#4
Jeg ku tænke mig en løsning med asp. Det kan måske gøres med at lave lidt om på formen uden billede, som er: <form method="POST" action="opret.asp?mode=oprettet"> <div align="center"> <center> <table border="0" width="500" cellspacing="0" cellpadding="2"> <tr> <td width="100%" style="border: 1 solid #000000" bgcolor="#BECACD"><font face="verdana" size="1"><b>Opret nyhed</b></font></td> </tr> <tr> <td width="100%" style="border-left: 1 solid #000000; border-right: 1 solid #000000; border-bottom: 1 solid #000000"> <table border="0" width="100%" cellspacing="0" cellpadding="3"> <tr> <td width="16%"><font face="verdana" size="1"><b>Overskrift</b></font></td> <td width="50%"><font face="verdana" size="1"> <input type="text" name="overskrift" size="62" style="font-size: 8pt; font-family: Verdana; border: 1 solid #000000"> </font> </td> </tr> <tr> <td width="16%"><font face="verdana" size="1"><b>Tekst</b></font></td> <td width="50%"><textarea rows="16" name="tekst" cols="61" style="font-size: 8pt; font-family: Verdana; border: 1 solid #000000"></textarea></td> </tr> <tr> <td width="16%"></td> <td width="50%"><font face="verdana" size="1"> <input type="submit" value="Opret nyhed" name="B1" style="background-color: #DCE2E4; font-size: 8pt; font-family: Verdana"> </font> </td> </tr> </table> </td> </tr> </table> </center> </div> </form> <br> <% end if elseif strMode = "oprettet" then if Session("Brugeradgang") = True then Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; " DSN = DSN & "DBQ=" & Server.MapPath("database.mdb") Conn.Open DSN strSQL = "Insert into news (dato, forfatter, overskrift, email, tekst) values ('" & DatePart("D",Now()) & "-" & DatePart("M",Now()) & "-" & DatePart("YYYY",Now()) & "','" & Session("forfatter") & "','" & Request.Form("overskrift") & "','" & Session("email") & "','" & Request.Form("tekst") & "')" Conn.Execute(strSQL) Conn.Close Set Conn = Nothing Response.Redirect "opret.asp" end if elseif strMode = "ret" then if Session("Brugeradgang") = True then Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; " DSN = DSN & "DBQ=" & Server.MapPath("database.mdb") Conn.Open DSN strQuery = "SELECT * FROM news WHERE id = " & Request.Querystring("news_id") & "" Set rs = Conn.Execute(strQuery) %>
ff
Nybegynder
21. januar 2004 - 23:43
#5
Jeg har forsøgt at lave om på koden ovenfor. Her er mit forsøg som desværre ikke fungerer: <form method="POST" action="opret.asp?mode=oprettet"> <div align="center"> <center> <table border="0" width="500" cellspacing="0" cellpadding="2"> <tr> <td width="100%" style="border: 1 solid #000000" bgcolor="#BECACD"><b>Opret nyhed</b></td> </tr> <tr> <td width="100%" style="border-left: 1 solid #000000; border-right: 1 solid #000000; border-bottom: 1 solid #000000"> <table border="0" width="100%" cellspacing="0" cellpadding="3"> <tr> <td width="16%"><b>Overskrift</b></td> <td width="50%"><font face="verdana" size="1"> <input type="text" name="overskrift" size="62" style="font-size: 8pt; font-family: Verdana; border: 1 solid #000000"> </font> </td> </tr> <tr> <td width="16%"><font face="verdana" size="1"><b>Billede</b></font></td> <td width="50%"><font face="verdana" size="1"> <% mvirtual = "/asp/billeder/" 'her billeder set fso = Server.CreateObject("Scripting.FileSystemObject") set mappa = fso.GetFolder(Server.MapPath(mvirtual)) set filur = mappa.files tmp = "<SELECT SIZE=4 NAME=""billede"" CLASS=""field"">" & VbCrLf tmp = tmp & "<OPTION SELECTED VALUE=""" & "Intet billede" & """" tmp = tmp & ">-- Intet billede --</OPTION>" & VbCrLf for each file in filur tmp = tmp & "<OPTION VALUE=""" & file.name & """" tmp = tmp & ">" & file.name & "</OPTION>" & VbCrLf Next tmp = tmp & "</SELECT>" set filur = nothing set mappa = nothing set fso = nothing Response.Write(tmp) %> </td> </tr> <tr> <td width="16%"><b>Tekst</b></td> <td width="50%"><textarea rows="16" name="tekst" cols="61"></textarea></td> </tr> <tr> <td width="16%"></td> <td width="50%"><font face="verdana" size="1"> <input type="submit" value="Opret nyhed" name="B1" style="background-color: #DCE2E4"> </font> </td> </tr> </table> </td> </tr> </table> </center> </div> </form> <br> <% end if elseif strMode = "oprettet" then if Session("Brugeradgang") = True then Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; " DSN = DSN & "DBQ=" & Server.MapPath("database.mdb") Conn.Open DSN strSQL = "Insert into news (dato, overskrift, tekst, billede) values (" & DatePart("D",Now()) & "-" & DatePart("M",Now()) & "-" & DatePart("YYYY",Now()) & "," & Request.Form("overskrift") & "," & Request.Form("tekst") & ", " & Request.Form("billede") & ")" Conn.Execute(strSQL) Conn.Close Set Conn = Nothing Response.Redirect "opret.asp" end if elseif strMode = "ret" then
ff
Nybegynder
21. januar 2004 - 23:46
#6
Jeg har oprettet et felt i databasen til billeder
21. januar 2004 - 23:46
#7
Hvad er det der ikke fungere i din kode ?
ff
Nybegynder
22. januar 2004 - 00:10
#8
ellebaek > Billederne lægges i en folder som man så kan se i "rullegardinen" og vælge, ved ikke om det er forklaring nok ? Er det muligt at få kommmentar til koden som jeg har pastet :)
ff
Nybegynder
22. januar 2004 - 00:12
#9
Jeg får fejl: Conn.Execute(strSQL)
22. januar 2004 - 11:09
#10
det er fordi du mangler 'er omkring dine tekster som du sætter ind i databasen... strSQL = "Insert into news (dato, overskrift, tekst, billede) values ('" & DatePart("D",Now()) & "-" & DatePart("M",Now()) & "-" & DatePart("YYYY",Now()) & "','" & Request.Form("overskrift") & "','" & Request.Form("tekst") & "', '" & Request.Form("billede") & "')" Altså i den du skrev ind til sidst...
22. januar 2004 - 11:09
#11
Men hvad var problemet i det du skrev her: 21/01-2004 23:43:50
ff
Nybegynder
22. januar 2004 - 13:35
#12
21/01-2004 23:43:50 Jeg får fejl i Conn.Execute(strSQL)
ff
Nybegynder
22. januar 2004 - 13:55
#13
tak til ellebaek, nu funker "opret" Gider du hjælpe mig med formen til "rediger", jeg gir nogen extra poeng :)
ff
Nybegynder
22. januar 2004 - 14:02
#14
Jeg paster her koden til rediger: Response.Redirect "opret.asp" end if elseif strMode = "ret" then if Session("Brugeradgang") = True then Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; " DSN = DSN & "DBQ=" & Server.MapPath("database.mdb") Conn.Open DSN strQuery = "SELECT * FROM news WHERE id = " & Request.Querystring("news_id") & "" Set rs = Conn.Execute(strQuery) %> <form method="POST" action="?mode=rettet&news_id=<% Response.Write Request.Querystring("news_id") %>"> <div align="center"> <center> <table border="0" width="500" cellspacing="0" cellpadding="2"> <tr> <td width="100%" style="border: 1 solid #000000" bgcolor="#BECACD"><font face="verdana" size="1"><b>Redigere:</b> <%=rs("overskrift").Value %></font></td> </tr> <tr> <td width="100%" style="border-left: 1 solid #000000; border-right: 1 solid #000000; border-bottom: 1 solid #000000" bgcolor="#DCE2E4"> <table border="0" width="100%" cellpadding="0"> <tr> <td width="16%"><font face="verdana" size="1"><b>Overskrift</b></font></td> <td width="84%"><font face="verdana" size="1"> <input type="text" name="overskrift" size="62" style="font-size: 8pt; font-family: Verdana; border: 1 solid #000000" value="<%=rs("overskrift").Value %>"> </font> </td> </tr> <tr> <td width="16%"><font face="verdana" size="1"><b>Tekst</b></font></td> <td width="84%"><textarea rows="16" name="tekst" cols="61" style="font-size: 8pt; font-family: Verdana; border: 1 solid #000000"><%=rs("tekst").Value %></textarea></td> </tr> <tr> <td width="16%"><font face="verdana" size="1"> </font></td> <td width="84%"><font face="verdana" size="1"> <input type="submit" value=" Ret " name="B1" style="background-color: #DCE2E4; font-size: 8pt; font-family: Verdana"> </font> </td> </tr> </table> </td> </tr> </table> </center> </div> </form> <br> <% rs.Close Conn.Close Set Conn = Nothing Set rs = Nothing end if elseif strMode = "rettet" then if Session("Brugeradgang") = True then Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; " DSN = DSN & "DBQ=" & Server.MapPath("database.mdb") Conn.Open DSN strSQL = "Update news set overskrift= '" & Request.Form("overskrift") & "' , tekst= '" & Request.Form("tekst") & "' Where id = " & Request.Querystring("news_id") & "" Conn.Execute(strSQL) Response.Redirect "?" rs.Close Conn.Close Set Conn = Nothing Set rs = Nothing end if elseif strMode = "slet" then if Session("Brugeradgang") = True then Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; " DSN = DSN & "DBQ=" & Server.MapPath("database.mdb") Conn.Open DSN strSQL = "Delete from news where id = " & Request.Querystring("news_id") & "" Conn.Execute(strSQL) Response.Redirect "?" rs.Close Conn.Close Set Conn = Nothing Set rs = Nothing end if else if Session("Brugeradgang") = True then Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; " DSN = DSN & "DBQ=" & Server.MapPath("database.mdb") Conn.Open DSN strQuery = "SELECT * FROM news Order By id Desc" Set rs = Conn.Execute(strQuery) %> <div align="center"> <center> <table border="0" width="500" cellspacing="0" cellpadding="4" style="border: 1 solid #000000"> <tr> <td width="15%" bgcolor="#BECACD"><font face="verdana" size="1"><b>Dato</b></font></td> <td width="45%" bgcolor="#BECACD"><font face="verdana" size="1"><b>Overskrift</b></font></td> <td width="30%" bgcolor="#BECACD"><font face="verdana" size="1"><b>Skrevet af</b></font></td> <td width="5%" bgcolor="#BECACD"><font face="verdana" size="1"> </font></td> <td width="5%" bgcolor="#BECACD"><font face="verdana" size="1"> </font></td> </tr> <% Do While Not rs.EOF %> <tr> <td width="15%" style="border-top: 1 solid #000000" bgcolor="#DCE2E4"><font face="verdana" size="1"><%=rs("dato").Value %></font></td> <td width="45%" style="border-top: 1 solid #000000" bgcolor="#DCE2E4"><font face="verdana" size="1"><%=rs("overskrift").Value %></font></td> <td width="30%" style="border-top: 1 solid #000000" bgcolor="#DCE2E4"><font face="verdana" size="1"><%=rs("forfatter").Value %></font></td> <td width="5%" style="border-top: 1 solid #000000" bgcolor="#DCE2E4"><font face="verdana" size="1"><b><a href="?mode=ret&news_id=<%=rs("id").Value %>">Ret</a></b></font></td> <td width="5%" style="border-top: 1 solid #000000" bgcolor="#DCE2E4"><font face="verdana" size="1"><b><a href="?mode=slet&news_id=<%=rs("id").Value %>">Slet</a></b></font></td> </tr> <% rs.MoveNext Loop %> </table> </center> </div> <% end if rs.Close Conn.Close Set Conn = Nothing Set rs = Nothing end if end if %> <% strMode = Request.Querystring("mode") if strMode = "login" then Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; " DSN = DSN & "DBQ=" & Server.MapPath("database.mdb") Conn.Open DSN strBrugernavn = Trim(Replace(request.form("brugernavn"),"'","''" )) strAdgangskode = Trim(Replace(request.form("adgangskode"),"'","''" )) SQL = "SELECT * FROM admin where brugernavn = '" & strBrugernavn & "' AND adgangskode = '" & strAdgangskode & "'" Set rs = Conn.Execute(SQL) If Not (rs.BOF Or rs.EOF) Then Session("id") = rs("id").Value Session("forfatter") = rs("forfatter").Value Session("email") = rs("email").Value Session("Brugeradgang") = True Response.Redirect "?" else %> <p align="center"><font face="verdana" size="1">Du er ikke logget på.<br>Har du indtastet brugernavn og adgangskode forkert? </font></p> <% end if end if %> <% strMode = Request.Querystring("mode") if strMode = "logud" then Session.Abandon Response.Redirect "?" end if %> <p align="center"><font face="verdana" size="1"><a href="opret.asp?mode=opret">Opret nyhed</a> - <a href="opret.asp?mode=logud">Log ud</a> - <a href="#" OnClick="java script:history.go(-1)">Back</a></font></p> </body> </html>
ff
Nybegynder
22. januar 2004 - 14:18
#15
Nu mangler jeg at få rediger og slet at fungere Jeg opretter et nyt spørgsmål
22. januar 2004 - 21:37
#16
Hey ff.. Lækkert det virker, og takker for points. Undskyld den lange svartid, men jeg har desværre ikke mulighed for at hjælpe dig, da jeg tager på skitur i morgen. Jeg håber du får det til at fungere. Mvh. Jens
Kurser inden for grundlæggende programmering