Avatar billede angelenglen Nybegynder
22. august 2006 - 21:52 Der er 8 kommentarer og
2 løsninger

opdater variabel "højere oppe"

Jeg har en side der fx kunne se sådan her ud:

<body>
<% i = 0 %>
<% i = i + 1%>Antal linier på denne side: <%=i%>
<% i = i + 1%>Test linie.
<% i = i + 1%>Test linie.
</body>

Dette ville jo umiddelbart skrive følgende i browseren:
Antal linier på denne side: 1
Test linie.
Test linie.


-er der ikke en måde hvorpå jeg kan påvirke en variabel der skal vises højere oppe på siden, længere nede fra?

dvs ovenstående skulle have skrevet:
Antal linier på denne side: 3
Test linie.
Test linie.

Det skal foregå serverside, så javascript løsninger dur ikke.

(Det er ikke linieskift jeg vil tælle, dette er blot et princip eksempel på hvad jeg vil opnå)
Avatar billede madeindk Nybegynder
22. august 2006 - 22:05 #1
Er det noget i denne her stil du mener? :-)

http://www.eksperten.dk/spm/726273
Avatar billede angelenglen Nybegynder
22. august 2006 - 22:07 #2
måske, jeg forstår bare ikke hvordan det hjælper her?
Avatar billede madeindk Nybegynder
22. august 2006 - 22:10 #3
Ok, men efter hvad jeg kan forstå på http://www.eksperten.dk/spm/726273 så ønsker han det samme som dig, nemlig at vise en variabel der først "lavet" i bunden, men som han godt kunne tænke sig skulle vises i toppen.

Men der er jo ikke andet for end at prøve det, det må jo ha' virkede for ham siden han har givet point!
Avatar billede angelenglen Nybegynder
22. august 2006 - 22:14 #4
ja, men hvor skal jeg kalde funktionen?

Hvis jeg kalder funktionen i toppen af siden, så outputter den jo den værdi param har dér, og hvis jeg kalder den længere nede på siden, så kommer outputtet jo frem på et forkert sted.
Avatar billede madeindk Nybegynder
22. august 2006 - 22:21 #5
Jeg ved det ikk, det er ikke mig der har skrevet den der funktion. Kunne bare huske jeg havde læst et spørgsmål med en der havde et problem der lignede meget dit og så ville jeg forsøge at poste det til dig.

Men jeg kan ikke hjælpe dig med at funktionen til at virke, for jeg ikke hvordan man bruger den.
Avatar billede angelenglen Nybegynder
22. august 2006 - 22:23 #6
okay, jeg venter lidt, og håber der kommer nogen der har et forslag der virker.
Avatar billede madeindk Nybegynder
22. august 2006 - 22:24 #7
Ok - det er fair nok.

Men tror det virker det jeg postede, tror bare funktionen skal bruges korrekt. Man kan jo heller ikke lige frem sige han har givet særlig mange instrukser, hehe.
Avatar billede montago Praktikant
23. august 2006 - 17:09 #8
man kan ikke ændre tidligere variable, eller udskrivninger i ASP, da koden læses sekventielt - man kan heller ikke kalde en funktion i bunden af siden, og få denne til at udskrive i toppen af streamen !

dét jeg ville gøre, er at bruge Javascript... men det måtte jeg ikke :p
Avatar billede montago Praktikant
23. august 2006 - 17:14 #9
det reelle svar :)

i stedet for at printe dit indhold på siden, skal du lave en ud-skrifts variabel

<%
linCount = 0
sub incr()
  linCount = linCount + 1
end sub

out = "<body>" : call incr()
out = out & "Antal linier på denne side: %var_1%" & "<br>" & vbCRLF : call incr()
out = out & "Test linie." & "<br>" & vbCRLF : call incr()
out = out & "Test linie." & "<br>" & vbCRLF : call incr()
out = out & "</body>" & "<br>" & vbCRLF : call incr()

Response.Write( replace(out,"%var_1%",linCount) )

%>

Man kan bruge Response.Flush hvis du vil udskrive ting delvist (til store out-variable)
Avatar billede angelenglen Nybegynder
23. august 2006 - 17:57 #10
Okay, eftersom det aldrig vil fungere optimalt på en side af bare lidt størrelse, accepterer jeg dette som et "det kan ikke lade sig gøre i praksis" svar.

Men mange tak for dit forslag, det er super smart til mini-hjemmesider.
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