Avatar billede 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)
%>
Avatar billede thesurfer Nybegynder
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.
Avatar billede ellebaek Nybegynder
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>"
Avatar billede ellebaek Nybegynder
21. januar 2004 - 23:42 #3
og så lige en %> til sidst efter response.write "</select>"
Avatar billede 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)
%>
Avatar billede 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
Avatar billede ff Nybegynder
21. januar 2004 - 23:46 #6
Jeg har oprettet et felt i databasen til billeder
Avatar billede ellebaek Nybegynder
21. januar 2004 - 23:46 #7
Hvad er det der ikke fungere i din kode ?
Avatar billede 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 :)
Avatar billede ff Nybegynder
22. januar 2004 - 00:12 #9
Jeg får fejl: Conn.Execute(strSQL)
Avatar billede ellebaek Nybegynder
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...
Avatar billede ellebaek Nybegynder
22. januar 2004 - 11:09 #11
Men hvad var problemet i det du skrev her: 21/01-2004 23:43:50
Avatar billede ff Nybegynder
22. januar 2004 - 13:35 #12
21/01-2004 23:43:50
Jeg får fejl i Conn.Execute(strSQL)
Avatar billede 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 :)
Avatar billede 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">&nbsp;</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">&nbsp;</font></td>
    <td width="5%" bgcolor="#BECACD"><font face="verdana" size="1">&nbsp;</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>
Avatar billede 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
Avatar billede ellebaek Nybegynder
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
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