webForumDet fria alternativet

räkna tecken vill inte fungera

ASP

22 svar · 312 visningar · startad av erka

Medlem sedan dec. 19996 522 inlägg
Frågan#1

ska inte detta gå ?

<%If Len(RS("newscontent")) < 300 Then%>
<%=RS("newscontent")%> 
<%Else%>
<%=Left(rs("newscontent"),220)%>
<%End If %>

------------------
1 Man, 1 Million dead, The odds are just about even - Ash

[Redigerat av erka den 20 apr 2001]

Medlem sedan dec. 19996 522 inlägg
#2

om jag skriver så här

<% Response.Write""& Len(RS("newscontent"))  &"" %>
<br><br> 
<%=Left(rs("newscontent"),220)%>...

Så skriver han ut antalet tecken som fanns i rs:en och hoppar två rader, men han skriver inte ut den <%=Left(rs("newscontent"),220)%>...

Varför beter den sig så här ?

------------------
1 Man, 1 Million dead, The odds are just about even - Ash

Medlem sedan apr. 200118 inlägg
#3

testa att tilldela en variabel värdet innan du skriver ut. typ:

<% Dim newscontent
If Len(rs("newscontent")) < 300 Then
 Response.Write(rs("newscontent")
Else
 newscontent = Left(rs("newscontent"), 220)
 Response.Write(newscontent)
End if %>

Det borde fungera.

------------------
There is always
something more to do

Medlem sedan jan. 20012 204 inlägg
#4

fel-inriktat inlägg

------------------
------------------
"Man kommer fortare fram till målet om man kryper åt rätt håll än springer åt fel håll"

[Redigerat av P den 20 apr 2001]

Medlem sedan dec. 19996 522 inlägg
#5

Kod

<% Dim newscontent
If Len(rs("newscontent")) < 300 Then
Response.Write(rs("newscontent")
Else
newscontent = Left(rs("newscontent"), 220)
Response.Write(newscontent)
End if %>

ger

Expected ')'

/se/newsevents/News.asp, line 44

Response.Write(rs("newscontent")
--------------------------------^

------------------
1 Man, 1 Million dead, The odds are just about even - Ash

Medlem sedan apr. 200118 inlägg
#6

*trött*

klantade till det, och glömde ett ")" efter Response.Write..

skall självklart stå:
Response.Write(rs("newscontent"))
och inte
Response.Write(rs("newscontent")
som jag råkade skriva.

jag ursäktar mig för det, och hoppas det löser sig ändå.

------------------
There is always
something more to do

Medlem sedan dec. 19996 522 inlägg
#7

kommer fram nada! , hmmmm inte något synns alls

------------------
1 Man, 1 Million dead, The odds are just about even - Ash

Medlem sedan apr. 200118 inlägg
#8

okej, då har jag faktiskt ingen aning just nu varför det inte funkar. kan du inte bifoga hela koden som berör just denna delen, och så, så kanske någon kan lösa det.

Har du kollat så att endast rs("newscontent") ger någon utskrift?

------------------
There is always
something more to do

Medlem sedan dec. 19996 522 inlägg
#9

yuppz skriver jag enbart ut den så ger den det den ska skriva ut..


<% 
Do Until Rs.EOF
Dim newscontent
If Len(rs("newscontent")) < 300 Then
Response.Write(rs("newscontent"))
Else
newscontent = Left(rs("newscontent"), 220)
Response.Write(newscontent)
End if %>

		  <%=Left(rs("newscontent"),220)%>...<br>
            <img src="/bin/images/arrow_red.gif" width="7" height="9"><a href="view.asp?DocumentID=News&CatID=ne&Show=<%=RS("newsid")%>&NewsLanguageID=<%=RS("newslanguageid")%>">Läs mer</a><br>
            <br>
            <img src="/bin/images/dott_366px.gif" width="366" height="4"><br>
            <br>
          </td>
        </tr>
        <%
		RS.MoveNext
		Loop 
		RS.Close
		Set RS = Nothing
%>

[Redigerat av erka den 20 apr 2001]

Medlem sedan apr. 200118 inlägg
#10

en fåga bara...

varför skriver du ut rs("newscontent") två gånger? direkt efter if...else-satsen så skriver du ut den igen, med left-funktionen. inte för att det borde påverka, men det verkar onödigt...

sedan borde ju "läs mer..." endast skrivas ut ifall nyheten klipps. nu skrivs den ju ut ändå. eller är det meningen att det skall bli så ändå?

men, något fel kan jag inte hitta.

------------------
There is always
something more to do

Medlem sedan dec. 19996 522 inlägg
#11

Du har helt rätt, den ska inte skrivas ut 2 ggr (left).. Men jag har den där så att om jag inte får det att fungera klippar jag bara bort det som inte fungerar...

Sen har du också helt rätt att läs mer inte ska stå om hela skrivs ut, men jag vill få det första att fungera först.. jag ser ju inte heller något fel..

------------------
1 Man, 1 Million dead, The odds are just about even - Ash

Medlem sedan dec. 19996 522 inlägg
#12

nu fungerar det

<% 
sNewsContent = trim(rs("newscontent")) 
if len(sNewsContent) > 360 then 
response.write(left(sNewsContent,220) & "...") 
%>
<br>
            <img src="/bin/images/arrow_red.gif" width="7" height="9"><a href="view.asp?DocumentID=News&CatID=ne&Show=<%=RS("newsid")%>&NewsLanguageID=<%=RS("newslanguageid")%>">Läs mer</a><br>
<%
else 
response.write(sNewsContent)
Response.Write"<br>" 
end if 
%>

------------------
1 Man, 1 Million dead, The odds are just about even - Ash

Medlem sedan apr. 200118 inlägg
#13

ogillar verkligen starkt när saker som detta händer. fel som inte kan hittas *suck*. =)

antagligen är det något som inte går rätt till när den försöker antigen kolla Len (fasst det funkade ju förut ?) eller när det Left:ar... mucho skummt.

har du testat att välja "visa->källa" och titta där och se ifall något felmeddelande gömmer sig där?

------------------
There is always
something more to do

Medlem sedan dec. 19996 522 inlägg
#14

inget felmedelande, det var att jag använda trim. En kille hjälpte mig ;) Men vad gör trim exakt...Hmmm **känna sig lite ovetande**

------------------
1 Man, 1 Million dead, The odds are just about even - Ash

Medlem sedan apr. 200118 inlägg
#15

okej. trevligt.

hum. vet faktiskt inte vad trim gör. sök i webforums forumarkiv typ.

brukar oftast fungera ;)

------------------
There is always
something more to do

Medlem sedan dec. 19996 522 inlägg
#16

ingen som kan förklara exakt vad TRIM gör för nytta i kodsnutten ovan ? **blinka sött med ögonen**

------------------
1 Man, 1 Million dead, The odds are just about even - Ash

Medlem sedan dec. 19998 577 inlägg
#17

Trim tar bort alla inledande och avslutande mellanslag... :)

------------------
Budweiser - Slightly contaminated water... probably harmless, but I would recommend boiling before you drink it...
webEye.nu SweQuake.com

Medlem sedan dec. 19996 522 inlägg
#18

tack vide, och i detta fall gör det detta vart någonstanns ?

------------------
1 Man, 1 Million dead, The odds are just about even - Ash

Medlem sedan dec. 19998 577 inlägg
#19

Men ar du på vilken variabel???

sNewsContent = trim(rs("newscontent"))

Den tar alltså bort alla inledande/avslutande mellanslag ur rs("newscontent") och lägger det i variabeln sNewsContent...

Eller menade du något annat?

------------------
Budweiser - Slightly contaminated water... probably harmless, but I would recommend boiling before you drink it...
webEye.nu SweQuake.com

Medlem sedan juli 20003 825 inlägg
#20

ASP har sina egenheter... och det är möjligt att det räcker med att dunka in allt i en variabel.

Byt från
sNewsContent = trim(rs("newscontent"))

till
sNewsContent = rs("newscontent")

Jag vet inte... jag kanske har fel. Ibland blir man förundrad över alla till synes ologiska varianter som krävs för att få allt att fungera!

------------------
"Never underestimate your opponents." - Name the movie.

375 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
118 ms — deklarationer (db)
0 ms — hämta statistik (cache)
253 ms — hämta tråd, inlägg och bilagor (db)
120 ms — ändringar (db)