Avatar billede Thomas Knudsen Nybegynder
28. december 2003 - 21:39 Der er 9 kommentarer og
1 løsning

Textarea - DB - Textarea

Modtager tekst fra et Textarea, gemmer i DB, og henter frem i Textarea igen, hvis brugeren ønsker at rette i sin profiltekst.

Som det er nu, laver jeg et tryk på Return om til <br> inden det gemmes i DB. Virker fint, MEN når man så redigerer, ser man de grimme html koder.

Hvordan gør jeg så linjeskift gemmes men ikke vises ved redigering.
Har prøvet at "replace" den anden vej, men det lykkedes ikke. Har jo set at fx dating.dk har fikset det så det er usynligt for klienten.
Avatar billede eagleeye Praktikant
28. december 2003 - 21:43 #1
Når du bruger replace er <BR> ikke de samme som <br> så sæt til ikke at være caseativ:

str = Replace(str,"<br>",vbCrLf, 1, -1, 1)
Avatar billede erikjacobsen Ekspert
28. december 2003 - 21:46 #2
Undlad at ændre noget når du lægge i databasen. Lav din replace ved udtræk hvis det skal vises,
og undlad det hvis det skal redigeres.
Avatar billede thesurfer Nybegynder
28. december 2003 - 21:46 #3
"caseativ".. er det en stavfejl, eller et ord jeg ikke kender til?
Kunne det have været "case-sensitive"?
Avatar billede eagleeye Praktikant
28. december 2003 - 21:47 #4
det var den hurtige stave måde ;)
Avatar billede erikjacobsen Ekspert
28. december 2003 - 21:48 #5
Google siger: Din søgning - caseativ - matchede ikke nogen dokumenter.
"caseativ" gav ingen resultater.

Men det ændrer sig jo nu ;)
Avatar billede heyde Nybegynder
29. december 2003 - 22:15 #6
Som det også tidligere er blevet sagt, er det nok ikke så smart at lave teksten om, før den bliver gemt.

"Problemet" er at når teksten bliver gemt i databasen, bruger systemet ikke "<br>", men "vbCrLf". Det smarte er at dette ikke bliver vist nogle steder, men det virker så desværre heller ikke når teksten bliver vist...

Når du skal hive teksten ud igen, og vise den korrekt, skal du skrive:
str = (din text-streng)
Response.Write replace(str, "vbCrLf", "<br>")

Stort set det samme som EagleEye skrev...
Avatar billede syntax_hh Nybegynder
31. december 2003 - 10:02 #7
Når du tilføjer til db'en:

    besked1 = Request.Form("besked") 'Her skal Formen laves om!
    besked1 = Replace(besked1, vbCrLf, "mlmrum")
    besked = besked1 'Her skal ´besked` laves om!

Når du trækker ud fra db'en:

<%
besked = Server.HtmlEncode(rs("besked")) 'Hvis du ike ønsker at bruge html Encode så slet det, og ændre ´besked`
message = Replace(message, "mlmrum", "<br>") 'Hvis det ikke virker så prøv med ´vbCrLf` istedet for ´<br>`
%>
Avatar billede Thomas Knudsen Nybegynder
04. januar 2004 - 16:26 #8
Har været på nytårsferie, derfor det langsomme svar.
Har nu leget lidt og jeg glemte lige at sige at jeg bruger Javascript i min ASP, så det med "vbCrLf" vidste jeg ikke lige hvordan skulle omsættes. Så jeg startede fra bunden og huskede det som ErikJacobsen skrev. Altså ikke ændre noget i data, men istedet lave præsentatioen om. Det jeg gør nu er at teksten bliver gemt rå, og når den vises, skifter jeg Enter ud med <br>. Det virker som jeg gerne vil.
Noget som jeg har tænkt lidt over er egenskaben ved et textarea. Jeg bruger den tilfældigvis (hugget kode her og der) i mit "Edit"-fil. Den hedder : "Wrap= Virtual". Hvad betyder det?

ErikJacobsen smid lige et svar, for det var dit som præcist løste problemet.
Avatar billede erikjacobsen Ekspert
04. januar 2004 - 16:40 #9
Nej tak, det er for mange point for så lidt ;)
Avatar billede Thomas Knudsen Nybegynder
04. januar 2004 - 17:05 #10
Okay. ;)
Jamen så lukker jeg og takker alle for svarene. Points går til Syntax_hh
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