Avatar billede dramsgaard Nybegynder
22. april 2003 - 17:43 Der er 10 kommentarer og
3 løsninger

linjeskift

jeg har lavet et nyhedssystem, men jeg kan ikke få den til at lave linjeskift når nyheden hentes ud fra access databasen. hvordan gør man det?

jeg har prøvet med Replace(rs("dit-felt")&"", vbCrLf, "<BR>") men kan ikke få det til at virke...er heller ikke sikker på hvor det skal sættes ind.

kan man derudover også på en simpel måde gøre det muligt at lave links og noget af teksten fed i nyheden?

hvis i skal se noget kode må i lige sige til

på forhånd tak!
Avatar billede jessbonde Nybegynder
22. april 2003 - 17:47 #1
Replace(rs("dit-felt"), vbCrLf, "<BR>")
Avatar billede -master-d- Nybegynder
22. april 2003 - 17:47 #2
Jeg vil gerne se noget kode, men det første klares på følgende måde

strFjernLinjeskift = Replace(rs("dit-felt")&"", vbCrLf, "<BR>")
stengen = strFjernLinjeskift
Response.Write strengen

Det andet gøres bedst vha. noget regular expressions.
Avatar billede jessbonde Nybegynder
22. april 2003 - 17:48 #3
undskyld... øjeblik
Avatar billede -master-d- Nybegynder
22. april 2003 - 17:49 #4
ja det skal nok være

strFjernLinjeskift = Replace(rs("dit-felt"), vbCrLf, "<BR>")
stengen = strFjernLinjeskift
Response.Write strengen

godt jessbonde
Avatar billede jessbonde Nybegynder
22. april 2003 - 17:49 #5
jeg synes det samme som master-d  ;o)
Avatar billede Slettet bruger
22. april 2003 - 17:52 #6
hvorfor dog indføre en ekstra variabel?
dinStreng = Replace(rs("dit-felt"), vbCrLf, "<BR>")
Response.Write dinStreng
kan vel gøre det...
Avatar billede -master-d- Nybegynder
22. april 2003 - 17:53 #7
ja det kan det, men det er bare nemmest at overskue hvis du ikke er sikker på hvordan det bruges, ikk.
Avatar billede Slettet bruger
22. april 2003 - 17:55 #8
nej det synes jeg ikke, tværtimod er det da mere uoverskueligt og ydermere spild af serverens hukommelse :)
Avatar billede dramsgaard Nybegynder
22. april 2003 - 17:58 #9
okay...hvor skal det sættes ind? jeg har en fil hvor formularen ligger, og en fil som sørger for at det bliver lagt ind i DB'en

min fil som der ligger det i DB'en ser sådan ud (det er news der skal laves linjeskift i):

<%
Response.Buffer = True

'Åbner connection til databasen
Set conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=" & Server.MapPath("../../db/maindb.mdb")
Conn.Open DSN

'Hvis brugeren har submittet formularen
if Request.ServerVariables("REQUEST_METHOD") = "POST" then
'Tjecker om felterne er udfyld
if (Request.Form("dato") <> "" AND Request.Form("forfatter") <> "" AND Request.Form("type") <> "" AND Request.Form("overskrift") <> "" AND Request.Form("trompet") <> "" AND Request.Form("news") <> "") then
'Tilføjer til databasen
Set rs = Server.CreateObject("ADODB.Recordset")
strSQL = "select * from nyheder where overskrift = '" & Request("overskrift") & "'"
                                   
rs.Open strsql, conn, 1, 3
if rs.eof or rs.BOF then
'Tilføjer til databasen
rs.AddNew
rs("dato") = Server.HTMLEncode(Request("dato"))
rs("forfatter") = Server.HTMLEncode(Request("forfatter"))
rs("overskrift") = Server.HTMLEncode(Request("overskrift"))
rs("trompet") = Server.HTMLEncode(Request("trompet"))
rs("news") = Server.HTMLEncode(Request("news"))
rs("type") = Server.HTMLEncode(Request("type"))

rs.update
Response.Redirect("../opdateret.asp")
else
'Skriver at navnet er optaget
Response.Write("<font color='red'>Navnet findes i forvejen i databasen</font><br /> <a href='opret.asp'>Tilbage</a><br />")
end if
rs.Close
set rs = nothing
                                   
else
Response.Write("<font color='red'>Der var fejl i dine indtastninger</font><br /><a href='opret.asp'>Tilbage</a><br /><br>")
end if
end if
                           
Conn.Close
Set Conn = Nothing
%>
Avatar billede jessbonde Nybegynder
22. april 2003 - 18:01 #10
du skal først bruge det når du skriver det ud igen
Avatar billede dramsgaard Nybegynder
22. april 2003 - 18:10 #11
det virker, takker : )

er det så muligt på samme måde at gøre det muligt at lave links og noget af teksten fed?
Avatar billede sbm Nybegynder
23. april 2003 - 11:42 #12
Du kan gøre ligeledes med dine tekst... Hvis du f.eks. har en søgeside, og gerne vil fremhæve de ord der er søgt efter...?

Du har et ord i en variabel, der skal fremhæves:

soegeord = "fedt-nok"

Det skal du så erstatte med

"<b>fedt-nok</b>"

eller

"<div class=fedskrift>" & soegeord & "</div>"

hvis du skulle gøre brug af CSS

Dermed kommer den f.eks. til at se således ud:

dinStreng = Replace(rs("dit-felt"), soegeord, "<div class=fedskrift>" & soegeord & "</div>")
Avatar billede sbm Nybegynder
23. april 2003 - 11:49 #13
Hov... Pas på med dine links... Hvis du ikke "bare" skriver adressen på siden, men faktisk laver et hyperlink, så har du jo et link og en URL. Hvis de er ens, vil du få problemer. Hvis de to er forskellige, er det link-teksten du skal erstatte. Men det kan stadig give problemer.

Eksempel:

<a href=www.eksperten.dk>Eksperten</a>

skal laves om til

<a href=www.eksperten.dk><b>Eksperten</b></a>

men da din Replace også vil erstatte den eksperten inde i dit <a> tag, vil det komme til at se ud som

<a href=www.<b>eksperten</b>.dk><b>Eksperten</b></a>

Hvilket er en gang volapyk. Hold lige tungen lige i munden hvis du har html-koder inde i den tekst som du laver Replace på. Det kan godt blive noget griseri.
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