webForumDet fria alternativet

funktion för långa rader

ASP

5 svar · 248 visningar · startad av Gimbo

Medlem sedan dec. 20001 626 inlägg
Frågan#1

Hejsan!

jag såg att jag hade en funktion för långa rader i en fil som jag hade på datorn, som jag själv inte har skrivit och jag kommer inte ihåg vart jag fick tag på den heller, men min fråga är hur jag ska kunna använda den i kombination med <%=recset("inlagg")%> för att man inte ska kunna skriva ett låååååååååååååååååååångt ord så att sidans tabeller knasar sig, för jag misstänker att den här funktionen är till för att dela på långa ord.

<%
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("db.mdb")
	

function doIt(textSomSkaFixas)
arrText = split(textSomSkaFixas, " ")
for i = 0 To uBound(arrText)
if Len(arrText(i)) > 60 then
newText = newText & " " & Left(arrText(i), 60)
'newText = newText & " " & Right(arrText(i), Len(arrText(i)-60))
newText = newText & " " & Right(arrText(i), Len(arrText(i))-60)
else
newText = newText & " " & arrText(i)
end if
next
doIt = newText
end function
%>

är det ngn som kan förklara lite hur funktionen är uppbyggd och vad de olika delarna gör?? men min huvudsakliga fråga är hur jag ska använad den för att inga långa ord ska förekomma i en tabell, nämligen <%=recset("inlagg")%>

Medlem sedan juni 20003 169 inlägg
#2
 <%=doIt(recset("inlagg"))%>
Medlem sedan dec. 200012 464 inlägg
#3

Om du vill anropa funktionen så skriver du bara

<% = doIt(recset("inlagg"))%>

Funktionen delar upp strängen i ord. Om ett ord är längre än 60 tecken så delas det upp i två delar, en med de 60 första och en med resten med ett blanksteg emellan.

Funktionen är inte helt ok, om du har ett ord som är 200 tecken långt så delas det upp i en bit med 60 tecken och i en med 140 tecken.

Det finns någon liknande funktion bland ASP-skripten

Medlem sedan dec. 20001 626 inlägg
#4

LarsG... det fungerade inte, jag ändrade samtliga platser där det stod 60 till 45 eftersom en split vid 60 e lite för mycket för min sida, men den delade inte på ordet efter 45tecken... jag gjorde som du sa dvs skrev <%=doIt(RecSet("Inlagg")%>

Medlem sedan dec. 200012 464 inlägg
#5

Jag gjorde en enkel test och då fick jag en delning på mitt långa ord.

Hur ser din kod ut? Får du något fel?

Är det bara i texten här som du glömt en parentes

<%=doIt(RecSet("Inlagg"))%>

?

Medlem sedan dec. 20001 626 inlägg
#6

jag glömde parantesen här, oj da nu fungerar det hos mig med, problemet var att la den funktionen i fel databaskoppling... tack för hjälpen

268 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
128 ms — deklarationer (db)
0 ms — hämta statistik (cache)
137 ms — hämta tråd, inlägg och bilagor (db)
125 ms — ändringar (db)