Avatar billede c-lund Nybegynder
01. juni 2003 - 17:00 Der er 7 kommentarer og
1 løsning

Hjælp til form

Hej.
Når man intaster noget i en tekst form og gerne vil lave linie skift trykker man jo bare enter. men problemet er at det skal gemmes i en database, for at det senere kan blive hente frem på en anden side. men her husker den ikke de linie skift, som man gerne vil have. er der en smart måde man kan få det til at virke på.
mvh.
C. Lund
Avatar billede no_doubt Nybegynder
01. juni 2003 - 17:03 #1
response.Write(Replace(rs("tekst"), VbCrLf, "<BR>"))
Avatar billede choco Nybegynder
01. juni 2003 - 17:04 #2
.
Avatar billede c-lund Nybegynder
01. juni 2003 - 17:19 #3
hvor skal jeg sætte det ind på siden
-----------------------------------

<html>

<head>

<title>
</title>
</head>

<body> 
   
<%
Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=" & Server.MapPath("cgi-bin/Database.mdb")
Conn.Open DSN

if request.servervariables("REQUEST_METHOD") = "POST" then
 
 
  strSQL="update presentation set "

 
 
  strSQL=strSQL & "presentation='" & Request.Form("presentation") & "'"
  strSQL=strSQL & "Where ID=" & Cstr(Session("ID"))





  'Gemmer/oppdater data i databasen
  Conn.Execute(strSQL)
end if
%>


<%
SQL = "SELECT * FROM presentation WHERE ID = " & Session("ID")
Set rs = Conn.Execute(SQL)
%>



<form method="POST" action="">


    &nbsp;<font color="979797" face="arial" size="2">Opdater venligst oplysningerne i følgende felter:</font>
<br>
&nbsp;<textarea rows="10" name="presentation" cols="40" style="background-color: #ffffff; font-family: arial; color: #979797;

font-size: 10 pt; border: 1 solid #C0CFDE"><%=rs("presentation")%></textarea>
<br>

           


&nbsp;<input type="submit" value="Gem" name="" style="background-color: #FFFFFF; font-family: arial; color: #979797;

font-size: 10 pt; border: 1 solid #C0CFDE">

<input type="button" value="Annuller" name="Annuller" onClick="history.go(-1)" style="background-color: #FFFFFF; font-family:

arial; color: #979797; font-size: 10 pt; border: 1 solid #C0CFDE"></p>
       
</form>   
   


</body>

</html>
Avatar billede choco Nybegynder
01. juni 2003 - 17:19 #4
sorry jeg lige blander mig men kan du ikke prøve at sende et helt script hvor den sætning indgår i for jeg kan ikke få den til at virke.
Avatar billede eagleeye Praktikant
01. juni 2003 - 17:20 #5
choco, stil dine egne spørgsmål eller må du nøje med det som er her. Prøv evt at bruge eksperten søge funtion dette spørgsmål er stillet flere gange før.
Avatar billede no_doubt Nybegynder
01. juni 2003 - 17:22 #6
<html>

<head>

<title>
</title>
</head>

<body> 
   
hvor skal jeg sætte det ind på siden
----------------------------------- 
   
<%
Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=" & Server.MapPath("cgi-bin/Database.mdb")
Conn.Open DSN

if request.servervariables("REQUEST_METHOD") = "POST" then
 
 
  strSQL="update presentation set "

 
 
  strSQL=strSQL & "presentation='" & Request.Form("presentation") & "'"
  strSQL=strSQL & "Where ID=" & Cstr(Session("ID"))





  'Gemmer/oppdater data i databasen
  Conn.Execute(strSQL)
end if
%>


<%
SQL = "SELECT * FROM presentation WHERE ID = " & Session("ID")
Set rs = Conn.Execute(SQL)
%>



<form method="POST" action="">


    &nbsp;<font color="979797" face="arial" size="2">Opdater venligst oplysningerne i følgende felter:</font>
<br>
&nbsp;<textarea rows="10" name="presentation" cols="40" style="background-color: #ffffff; font-family: arial; color: #979797;

font-size: 10 pt; border: 1 solid #C0CFDE"><%response.Write(Replace(rs("presentation "), VbCrLf, "<BR>"))%></textarea>
<br>

           


&nbsp;<input type="submit" value="Gem" name="" style="background-color: #FFFFFF; font-family: arial; color: #979797;

font-size: 10 pt; border: 1 solid #C0CFDE">

<input type="button" value="Annuller" name="Annuller" onClick="history.go(-1)" style="background-color: #FFFFFF; font-family:

arial; color: #979797; font-size: 10 pt; border: 1 solid #C0CFDE">
       
</form>   
   


</body>

</html>
Avatar billede eagleeye Praktikant
01. juni 2003 - 17:24 #7
For at et linje skift bliver et linjeskift når man udskriver det i browseren skal det være <br>. Problemmet er bare at return tasten ikke skriver <br> ind i teksten men der imod Carriage Return og Line Feed, det svare til konstanten vbCrLf. Form felterne buger værdien af return tasten. Så du må afgøre om du vil gemme <br> for return eller return-tasten.

Hvis du gemmer <br> er du så nød til når du gemmer i DB'en at lave:
txtTilDB = Replace(request.form("tekst"), VbCrLf, "<br>"))

Så kan man bare udskrive teksten direkte fra DBen:
Response.write rs("tekst")

Hvis man så vil rette i teksten så skal du lave <br> om til vbCrLf (return-tasten) før du ligger det ind i form feltet.:
response.Write(Replace(rs("tekst"), "<br>", vbCrLf))


Hvis du vil gemme vbCrLf i databasen så skal man kun skift vbCrLf ud når man udskriver fra DB'øen

response.Write(Replace(rs("tekst"), vbCrLf, "<br>"))


Men typisk retter man ikke så tit i teksten som den vil blive udskrevet, så for hastighed laver man det om så man kan udksrive det direkte.
Avatar billede c-lund Nybegynder
05. juni 2003 - 17:35 #8
chvj
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