Det jag vill göra är att använda samma system som PelleSoft gör här, alltså spara ner kod till en databas för att sedan kunna presentera densamma på en sida. Du har angett att du är 4 på skalan asp och det gör det lite svårt för mig att veta på vilken nivå du vill ha hjälp eftersom jag förmodar att du kan rätt mycket redan nu. Men jag får ta ett exempel och försöka göra det bästa av situationen. Sorry för den knapphändiga infon. jag kör mot en access 2000 databas. Textmassan sparas korrekt i databasen men sedan när jag får tillbaka texten kastas vissa programsatster om, exempel: Ser ut som om du glömt End If OK, den koden jag bifogade var endast ett exempel men tack i alla fall. Om jag fårstår dig rätt så har vi ungefär samma system på våra sidor. När jag byggde upp mitt system så satt jag och testa att skriva in aspsattser in i databasen utan resultat. Min lösing vart att använda includefiler till de sidor som behövde aspkod och sedan lagra sökvägen till include filen i databasen. Tänk på att använda Server.Execute(file) när du ska includera filen.asp-kod till databas och tillbaka
Förslag, artiklar...?Sv: asp-kod till databas och tillbaka
En textarea kan innehålla max 32k data som lagras för att sedan skickas ner till databasen. Oavsett om det är programkod, htmlkod eller vad det är så försöker man alltid lagra ner informationen precis som den skrevs och först när den visas kan man tänkas manipulera resultatet.
Om du har en textarea, skriver en mängd kod eller text så använder jag i alla fall alltid lagrade procedurer för detta. Nu vet jag inte vad du kör för databas men det kanske är access, msde eller sql - oavsett det så får man förbereda ett fält att ta emot stora mängder data och därför får fältet typen memo alternativt ntext.
Det enda som egentligen är viktigt är att du ser till att ersätta alla ' så det inte blir en felaktig sql-syntax eller att man kan köra det som kallas sql-injection. Vi har en textarea som vi döpt till text och skall sen lagra ner datat.
<code>
textmassa = Request.Form("text")
textmassa = Replace(textmassa,"'","''")
sql = "insert into tabell (textkod) values('" & textmassa & "')"
con.execute sql
</code>
Nu har du infogat den textmassa du önskat i databasen och du skall säkert ha en tabell med lite fler fält, bl.a. ett id som gör att varje post kan hittas också. Sen när vi tar oss till en annan sida och skall presentera detta så finns det två alternativ. Antingen presenterar man det tillbaks i en textarea, exempelvis om man vill ändra eller redigera. Det andra alternativet är att skriva ut det i ordnad form.
Om man väljer ordnad form så är det ju så att om man skrivit html så kan det ställa till det om man skriver det eftersom viss kod kan köras i webbläsaren så då får man konvertera denna kod med exempelvis server.htmlencode(textmassa).
I detta exempel skall vi visa textmassan för id 3
<code>
id = 3
set rst = con.execute("select textmassa from tabell where id =" & id)
if not rst.eof then
response.write server.htmlencode(rst("textmassa"))
else
response.write "Posten finns inte"
end if
</code>
Mycket svårare än såhär är det inte att göra det. Skall man däremot sätta igång och formatera, färglägga den eventuell htmlkod som presenteras så är det en annan femma och det finns massor av varianter. En av lösningen är att flitigt använda kommandot replace.
Hoppas detta hjälpte, annars får du fråga lite mer specifikt så skall jag eller någon annan försöka svara på din fråga.
HälsningarSv: asp-kod till databas och tillbaka
Allt detta fungerar:
<code>
<% = MnVar %>, <% Response.Write("MinVar") %>
</code>
Detta fungerar ej:
<code>
<input type="button" id="btnTest" value="Test" <% If (Session("iUserLevel") < iUserLevel) Then Response.Write "disabled" %>
</code>
blir istället:
<code>
<input type="button" id="btnTest" value="Test" % ?disabled? Response.Write Then iUserLevel) < (Session(?iUserLevel?) If <%>
</code>
En annan märklig sak är att mina submit- och resetknappar "försvinner" när jag hämtar tillbaka sidan i redigeringsläge.
Tack för ditt utförliga svar!Sv: asp-kod till databas och tillbaka
<code>
<input type="button" id="btnTest" value="Test"
<%
If (Session("iUserLevel") < iUserLevel) Then
Response.Write "disabled"
End If
%>
> <!-- avslutande > för att stänga input-taggen -->
</code>Sv: asp-kod till databas och tillbaka
Sv: asp-kod till databas och tillbaka