Toon posts:

[ASP] website database gebasseerd, vraag over database

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik wil een website totaal op een database laten draaien. Wanneer ik via de query string een ID heb uitgelezen en die geselecteerd heb uit de database worden en waarden in de website geladen (plaatje, tekst, links etc). Nu heb ik een vraag over dat tekst veld. Hoe kan ik alle tekst die ik wil laten zien op de site in de kolom tekst zetten, maar dat op de website er wel na zoveel tijd een nieuwe regel is. Want in de database is het een lange regel!...

Bijvoorbaad dank Lucas

Verwijderd

Je kan na een aantal karakters een <BR> invoegen; en dan natuurlijk netjes tussen twee woorden (zoeken naar een spatie).

Verwijderd

Topicstarter
Is kewl, zo wil ik dat ook, maar hoe kan ik dan uit die tekst halen wanneer er een <br> of een spatie zit?

Lucas

  • Marc
  • Registratie: November 2001
  • Laatst online: 01-12-2021
ik weet niet of je php gebruikt:
strtok

[ Voor 76% gewijzigd door Marc op 31-12-2002 19:45 ]


Verwijderd

Topicstarter
zoals boven aan staat [asp] maar in iedergeval, zoiets zoek ik dan alleen dus voor ASP

  • risr
  • Registratie: Juli 2002
  • Laatst online: 14-07 10:19
Ik heb dat probleem als volgt opgelost:


JScript:

ASP.NET Visual Basic:
1
<% =String(Server.HTMLEncode(rsWeblogs("Text"))).replace(/\n/g,"<br>"); %>

[ Voor 16% gewijzigd door risr op 04-01-2003 23:04 . Reden: test ]


  • supakeen
  • Registratie: December 2000
  • Laatst online: 09-09-2025
risr schreef op 31 December 2002 @ 20:02:
Ik heb dat probleem als volgt opgelost:


JScript:

code:
1
<% =String(Server.HTMLEncode(rsWeblogs("Text"))).replace(/\n/g,"<br>"); %>
Je replaced dus een newline met een br :? Maar wat is die spatie dan :?

  • risr
  • Registratie: Juli 2002
  • Laatst online: 14-07 10:19
Wat is er zo interessant aan die spatie? Ik zie het probleem met die spatie niet.

(btw; HTML code voor een spatie is  )

Verwijderd

Topicstarter
Het gaat mij ook niet om die spatie, het gaat er mij om dat hij tekst uit de data base kan knippen, dus wanneer er <br> staat dat hij op een nieuwe regel begint!...

Lucas

  • supakeen
  • Registratie: December 2000
  • Laatst online: 09-09-2025
Verwijderd schreef op 31 december 2002 @ 20:19:
Het gaat mij ook niet om die spatie, het gaat er mij om dat hij tekst uit de data base kan knippen, dus wanneer er <br> staat dat hij op een nieuwe regel begint!...

Lucas
Als die <br> in de database staat pakt hij die ook automatisch hoor, je moet dat van ramses gebruiken zodat hij ook een enter pakt :)

  • pasz
  • Registratie: Februari 2000
  • Laatst online: 16-08 23:04
Tekst = replace(Tekst, chr(10) , "<br>")

woei!


Verwijderd

HTML wordt uit zichzelf al keurig gewrapped, daar hoef je verder niet moeilijk voor te gaan doen. Of gaat het niet om gewone tekst, maar hele lange strings zonder spaties?

[edit]
Hmm, nu vergeet ik het belangrijkste punt wat ik wilde noemen. Tekst bestaat uit zinnen -waar je verder niets mee doet- en alinea's (of paragraphs), die je dus met <p> en </p> aangeeft. Bij gewone tekst hoef je nooit <br> te gebruiken, sterker nog, ik raad het af, aangezien je jezelf gaat beperken in de mogelijkheden om het met CSS snel even iets anders te stylen.

Ik stel voor dat je gaat splitten op harde returns ( eventueel dubbele harde returns, afhankelijk van hoe de tekst eruit ziet ), en bij elk deel er dus <p> voor, en </p> achter zet.

[ Voor 75% gewijzigd door Verwijderd op 31-12-2002 20:30 ]


  • MrTinux
  • Registratie: December 2000
  • Laatst online: 17:50

MrTinux

Terug van nooit weggeweest.

Sla je de tekst op met [enter]-karakters voor een nieuwe regel?
ASP:
1
Response.write Replace(strUitDatabase, chr(13), "<br>")

"Hij doet 't niet" = onvolledige informatie


  • DeverauX
  • Registratie: Februari 2002
  • Niet online

DeverauX

Focus is everything

Ik begrijp uit je vraagstelling dat je de tekst dus gewoon preformatted wilt weergeven, daarvoor kan je de volgende replace funcie gebruiken:
ASP:
1
Replace ( strData, vbCrLf, "<br>" )


ps: het is netter er een functie van te maken die je meerdere malen kan aanroepen (bijvoorbeeld in combinatie met het replacen van "gevaarlijke" tekens.

...whatever was distasteful or unpleasant or uncomfortable or painful - music could always soothe that.
All you have to do is reach out to beauty.
Quincy Jones


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 16:14

gorgi_19

Kruimeltjes zijn weer op :9

devraux schreef op 01 januari 2003 @ 13:23:
ps: het is netter er een functie van te maken die je meerdere malen kan aanroepen (bijvoorbeeld in combinatie met het replacen van "gevaarlijke" tekens.
Daar hebben ze Server.HTMLEncode en Server.HTMLDecode voor uitgevonden.. :)

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Verwijderd

MrTinux schreef op 31 December 2002 @ 20:24:
Sla je de tekst op met [enter]-karakters voor een nieuwe regel?
ASP:
1
Response.write Replace(strUitDatabase, chr(13), "<br>")
Dat kan wel, maar dan moet degene die de info intiept wel op enter drukken, er is volgens mij ook een code die elke *-aantal tekens telt en dan bij een bep. teken bijv. de dichtstbijzijnde [spatie] de regel afbreekt door er een <br> in te zetten.

code:
1
2
3
4
line1=left(230,text)
line2=middle(231,460,text)
line3=right(461,690,text)
eindtext=line1 & "<br>" & line2 & "<br>" & line3

Met een beetje alternatief asp-en kun je dan de laatste spatie zoeken en vervengen door een <br>, ik weet niet meer exact welk command dat is, maar dat staat vast wel in de IIS-help.

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Ik snap niet waarom iedereen altijd Chr(10) of Chr(13) gaat liggen replacen. Als het goed is staat er in je DB een echte "Enter", en dat is dus een Carriage Return en Line Feed. Dus als je het netjes wil doen, replace je vbCrLf met een <br> tag.

devraux doet dat netjes dus...

Doe je dat niet, dat zit er "stiekem" dus nog de helft in (Replace je Chr(10) dan blijft die Chr(13) erin zitten en omgekeerd).

BTW:
Chr(10) = Carriage Return (oftewel vbCr)
Chr(13) = Line Feed (oftewel vbLf)
en vbCrLf is dus Chr(10) & Chr(13). Druk maar eens de Len(vbCrLf) af...

edit:

Oh, enne Bukker: Ik zou dat in een For-loopje zetten of zo. Want als je line1 afkapt, zit je met een rest die naar line2 moet etc... Zo krijg je na verloop van tijd een flinke verloop... <moeilijk uit te leggen, maar probeer het maar>
En de manier die je nu aangeeft werkt alleen maar als de text niet langer is als XXX tekens, en klapt er zelfs uit als de tekst te kort is!

[ Voor 32% gewijzigd door RobIII op 02-01-2003 11:01 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Verwijderd

RobIII schreef op 02 January 2003 @ 10:59:
Oh, enne Bukker: Ik zou dat in een For-loopje zetten of zo. Want als je line1 afkapt, zit je met een rest die naar line2 moet etc... Zo krijg je na verloop van tijd een flinke verloop... <moeilijk uit te leggen, maar probeer het maar>
En de manier die je nu aangeeft werkt alleen maar als de text niet langer is als XXX tekens, en klapt er zelfs uit als de tekst te kort is!
[/edit]
Bedoel je zo?:
code:
1
2
3
4
5
6
line1=left(230,text)
y=len(text)/230
for x 1 to y step 1
line= line & "<br>" & middle((230*x+1),(230*(x+1)),text)
next x
line= line1 & "<br>" & line


Of het zo klopt weet ik niet, ik denk dat ik y ook nog moet afronden naar een heel getal.

[ Voor 12% gewijzigd door Verwijderd op 02-01-2003 11:09 ]


  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Verwijderd schreef op 02 January 2003 @ 11:08:
[...]

Bedoel je zo?:
code:
1
2
3
4
5
6
line1=left(230,text)
y=len(text)/230
for x 1 to y step 1
line= line & "<br>" & middle((230*x+1),(230*(x+1)),text)
next x
line= line1 & "<br>" & line


Of het zo klopt weet ik niet, ik denk dat ik y ook nog moet afronden naar een heel getal.
Het idee is er, maar er klopt niks van ;-)

>>line1=left(230,text)

Het is ten eerste line1=left(text,230), ten tweede gaat dit al fout als de tekst korter is dan 230 tekens...

Enz. enz... Maar het idee erachter klopt aardig ;-) Misschien is <achterafgezien> een while-lusje mooier...

Als er genoeg mensen zeuren wil ik er wel een in mekaar flansen.... :P

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
P.s.: Dit gaat alleen werken met een non-proportioneel font!!!!!

Bij een proportioneel font is een W breder dan een I, en dus is een regel met 80 W's breder dan een regel met 80 I's

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Verwijderd

Ik zit momenteel aan een incooperatief win 98 ding omdat mijn Win XP IIS-server down is, ik kon hem dus helaas niet testen.

Verwijderd

RobIII schreef op 02 januari 2003 @ 11:13:
P.s.: Dit gaat alleen werken met een non-proportioneel font!!!!!

Bij een proportioneel font is een W breder dan een I, en dus is een regel met 80 W's breder dan een regel met 80 I's
OK, het was niks, maar doet IE niet automatisch afbreken?

  • DeverauX
  • Registratie: Februari 2002
  • Niet online

DeverauX

Focus is everything

gorgi_19 schreef op 01 January 2003 @ 13:56:
[...]

Daar hebben ze Server.HTMLEncode en Server.HTMLDecode voor uitgevonden.. :)
Klopt inderdaad! Vandaar dat je deze functie en de functie replace kan samenvoegen tot één functie :9

...whatever was distasteful or unpleasant or uncomfortable or painful - music could always soothe that.
All you have to do is reach out to beauty.
Quincy Jones

Pagina: 1