---
title: "Resonse.Write blir inte som jag tänkt"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/71450-resonse-write-blir-inte-som-jag-tänkt"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "plelkes"
published: "2003-03-18T08:42:26.000Z"
updated: "2003-03-18T15:04:36.000Z"
replies: 17
views: 408
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/asp/71450-resonse-write-blir-inte-som-jag-tänkt"
---

# Resonse.Write blir inte som jag tänkt

## #1 — plelkes, 2003-03-18T08:42Z

Jag får inte till detta med tabell och Response.Write

Med nedanståend kod:

```
<html>
<head>
<title>gästbokenp</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head><body bgcolor="#FFFFFF" text="#000000">
<html>
<head>
<title>gästbokenp</title>

</head><body bgcolor="#FFFFFF" text="#000000">
<p align="center"><font size="7"><b><i><font color="#FFCC33">V&auml;lkommen till 
  skolans g&auml;stbok</font></i></b></font></p>
 <%  dim minCon 'Connection
     dim rsSkriv 'recordsetten f&ouml;r nya inl&auml;gg
     dim strSQL

Set minCon = Server.CreateObject("ADODB.Connection")
set rsSkriv =Server.CreateObject("ADODB.Recordset")

minCon.Open "DRIVER={Microsoft Access Driver (*.mdb}; DBQ="&Server.MapPath("guests.mdb")
strSQL = "SELECT * FROM guestbook ORDER by ID DESC"

rsSkriv.Open strSQL, minCon, 3, 3
rsSkriv.AddNew

Response.Write ("<table width="780" border="2" cellspacing="5" cellpadding="5">")
Do while NOT rsSkrivEOF
  Response.Write ("<tr>")
    Response.Write ("<td bgcolor="#666666" width="114">)" 
      Response.Write ("<p><b><font size="5"><u><font color="#0000FF">Namn:</font></u></font></b></p>")
    Response.Write ("</td>")
    Response.Write ("<td width="507">")
Response.Write ("rsSkriv("Namn")=Request.Form("namn")")
Response.Write ("</td>")
    Response.Write ("<td width="99">")
Response.Write ("<% =date %>")
Response.Write ("</td>")
  Response.Write ("</tr>")
  <tr> 
    <td bgcolor="#666666" width="114"> 
      <p><b><font size="5"><u><font color="#0000FF">E-post:</font></u></font></b></p>
    </td>
    <td colspan="2">&nbsp;</td>
  </tr>
  <tr> 
    <td bgcolor="#666666" width="114"> 
      <p><b><font size="5"><u><font color="#0000FF">Hemsida:</font></u></font></b></p>
    </td>
    <td colspan="2">&nbsp;</td>
  </tr>
  <tr> 
    <td bgcolor="#666666" width="114"> 
      <p><b><font size="5"><u><font color="#0000FF">Meddelande:</font></u></font></b></p>
    </td>
    <td colspan="2">&nbsp;</td>
  </tr>
</table>
 %>

</body>
</html>
```

  Får jag fäljande upp på skärmen:

> Välkommen till skolans gästbok
> 
>  ") Response.Write ("") Response.Write ("") E-post: \_ Hemsida: \_ Meddelande: \_ %\>

Permalänk: https://www.webforum.nu/p/71450

## #2 — plelkes, 2003-03-18T08:44Z

Såg redan ett fel - som dock inte har med det hela att göra:
skall naturligtvis vara

```
Do while NOT rsSkriv.EOF
```

Permalänk: https://www.webforum.nu/p/982935

## #3 — @nders, 2003-03-18T08:50Z

1) Du blandar asp-kod och html-kod hur som helst, och du har contextswitchar (\<% %\>) inne i din asp-kod. De ska du använda när du byter mellan html-läge och asp-läge.
2) Du har lagt en massa asp-kod inne i response.write. Response.write skriver ut strängar till webbläsaren.
3) Du har mängder med citationstecken inne i dina strängar, dessa måste du escape:a.

Det är mycket märkligt att du inte får felmeddelanden av denna kod. Har du on error resume next högre upp i koden?

Slutsats: gör om, gör rätt. ;)

Mvh,

Permalänk: https://www.webforum.nu/p/982938

## #4 — plelkes, 2003-03-18T08:53Z

tack för ditt snabba svar @nders!

Kan fu ge lite utförligare råd på hur jag kan rensa upp och rätta till?

Permalänk: https://www.webforum.nu/p/982940

## #5 — Engine^, 2003-03-18T08:54Z

```
<html>
<head>
<title>gästbokenp</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head><body bgcolor="#FFFFFF" text="#000000">
<html>
<head>
<title>gästbokenp</title>

</head><body bgcolor="#FFFFFF" text="#000000">
<p align="center"><font size="7"><b><i><font color="#FFCC33">Välkommen till 
  skolans gästbok</font></i></b></font></p>
 <%  dim minCon 'Connection
     dim rsSkriv 'recordsetten för nya inlägg
     dim strSQL

Set minCon = Server.CreateObject("ADODB.Connection")
set rsSkriv =Server.CreateObject("ADODB.Recordset")

minCon.Open "DRIVER={Microsoft Access Driver (*.mdb}; DBQ="&Server.MapPath("guests.mdb")
strSQL = "SELECT * FROM guestbook ORDER by ID DESC"

rsSkriv.Open strSQL, minCon, 3, 3
rsSkriv.AddNew

[b]Response.Write ("<table width=780 border=2 cellspacing=5 cellpadding=5>")

Do while NOT rsSkrivEOF
  Response.Write ("<tr><td bgcolor=#666666 width=114>")
  Response.Write ("<p><b><font size=5><u><font color=#0000FF>Namn:</font></u></font></b></p>")
  Response.Write ("</td><td width=507>")
Response.Write (rsSkriv("Namn") & " = " & Request.Form("namn") & "</td>")
  Response.Write ("<td width=99>" & Date & "</td></tr>")
%>[/b]
  <tr> 
    <td bgcolor="#666666" width="114"> 
      <p><b><font size="5"><u><font color="#0000FF">E-post:</font></u></font></b></p>
    </td>
    <td colspan="2"> </td>
  </tr>
  <tr> 
    <td bgcolor="#666666" width="114"> 
      <p><b><font size="5"><u><font color="#0000FF">Hemsida:</font></u></font></b></p>
    </td>
    <td colspan="2"> </td>
  </tr>
  <tr> 
    <td bgcolor="#666666" width="114"> 
      <p><b><font size="5"><u><font color="#0000FF">Meddelande:</font></u></font></b></p>
    </td>
    <td colspan="2"> </td>
  </tr>
</table>

</body>
</html>
```

Permalänk: https://www.webforum.nu/p/982941

## #6 — @nders, 2003-03-18T08:56Z

Till att börja med: har du on error resume next, bort med den.

Permalänk: https://www.webforum.nu/p/982944

## #7 — Engine^, 2003-03-18T08:59Z

Såg en sak... varför har du med *rsSkriv.AddNew*?

Permalänk: https://www.webforum.nu/p/982948

## #8 — plelkes, 2003-03-18T09:04Z

Tack för ditt svar Engine^

> varför har du med rsSkriv.AddNew?

 
jag skall ju uppdatera en databas och trodde jag att jag måste "berätta" för recordsettet att vi lägger till en ny rekord.
Stämmer inte detta?

Permalänk: https://www.webforum.nu/p/982950

## #9 — Engine^, 2003-03-18T09:09Z

M'kay. Jag skulle dock använda mig av en sql-sats istället.

Men du öppnar bara recordset:et för att lägga till. Det kommer aldrig någon .Update(), så därför började jag att fundera. Men det kanske kommer i ett senare skede?

Jaja... fråga på du :)

Permalänk: https://www.webforum.nu/p/982954

## #10 — plelkes, 2003-03-18T11:42Z

Engine^, 
det är tänkt att det skall komma

```
Update()
```

 

> Jag skulle dock använda mig av en sql-sats iställe

 
Hur skulle/borde SQL´en se ut?

Som du förstår så är det tänkt att med hjälp av ett formulär lägga till databasen guest.mdb´s tabell guestbook

Permalänk: https://www.webforum.nu/p/983039

## #11 — Engine^, 2003-03-18T12:04Z

Det beror ju på hur du vill skicka datat, men det skulle kunna se ut så här:

```
<form action="getdata.asp" method="post">
  Namn: <input type="text" name="strNamn" maxlength="20"><br>
  E-post: <input type="text" name="strEMail" maxlength="30"><br>
  Hemsida: <input type="text" name="strHemsida" maxlength="30"><br>
  Meddelande: <textarea name="strMeddelande" rows="10"></textarea><br>
  <input type="submit" name="btnSubmit" value="Skicka">
</form>
```

Ovan bakar du in i din sida... nedan kommer sidan som ska ta hand om formuläret när det postats...

```
<%
  Dim objC

  Set objC = Server.CreateObject(ADODB.Connection)
  objC.Provider = "Microsoft.Jet.OleDB.4.0"
  objC.DataSource = Server.MapPath("guests.mdb")
  objC.Open

  strSQL = "INSERT INTO guestbook (namn, epost, hemsida, meddelande) " & _
  "VALUES ('"& Request.Form("strNamn") &"', '"& Request.Form("strEMail") &"', '"& _
  Request.Form("strHemsida") & "', '" & Request.Form("strMeddelande") &"');"

  objC.Execute strSQL, , 1

  Set objC = Nothing

  Response.Redirect "[i]visagästbok.asp[/i]" [blue]'skicka tillbaka användaren, så den får se vad den postat...[/blue]
%>
```

Det här är givetvis inte bara att smacka in och tro att det ska fungera, men det är en fingervisning om hur du kan gå till väga.

Hoppas det hjälper något iaf :)

Permalänk: https://www.webforum.nu/p/983053

## #12 — plelkes, 2003-03-18T12:18Z

Vilken är den rätta syntaxen?

detta som jag hittade hos webeye:

```
Response.Write "<table><tr><td>" & strNavigation & "</td></tr></table>"
```

 
Eller

```
Response.Write ("<p><b><font size=5><u><font color=#0000FF>Namn:</font></u></font></b></p>")
```

Permalänk: https://www.webforum.nu/p/983061

## #13 — Jesper T, 2003-03-18T12:24Z

En fråga om tycke och smak.

Permalänk: https://www.webforum.nu/p/983067

## #14 — plelkes, 2003-03-18T13:45Z

så ni menar att :

1. Response.Write "  "
2. Response.Write ("  ")

 
är lika rätt??

Permalänk: https://www.webforum.nu/p/983133

## #15 — solbulle, 2003-03-18T13:52Z

Ja.

Permalänk: https://www.webforum.nu/p/983137

## #16 — mrblonde, 2003-03-18T13:56Z

Japp.. eller egentligen inte. Det funkar likadant så bekymra dig inte.

Egentligen har man () när det är en funktion som returnerar någonting och utan när det är en sub, men man kan ha en sub med () fast då måste man göra en call 
ex:

```
sString = MyFunction(iInParameter)
sString = MyFunction iInParameter
MySub iInParameter
call MySyb(iInParameter)
```

 

Alla dess 4 är giltiga sätt att ropa på functions eller subbar, men jag anser att man skall använda sig av () vid functioner och utan vid subbar. Smaken är docksom baken, alla har olika åsikter och i .NET är det tvingat har jag för mig att navända ().

Permalänk: https://www.webforum.nu/p/983141

## #17 — solbulle, 2003-03-18T14:17Z

Personligen kallar jag på en sub med den sistnämnda varianten. Just för att man då lätt ser att det är en sub som påkallas.
Vad det gäller response.write (mm iofs) använder jag inte () just pga att det är hyfsat vedertaget att inte göra det.

Permalänk: https://www.webforum.nu/p/983162

## #18 — plelkes, 2003-03-18T15:04Z

Hej,
här kommer kunskapstörstiga ja med ytterligare en fråga:
Finns det ngra skillnader och fördelar i att använda SQL-sats för att skriva till en databas istället för .AddNew och .Uppdate?

Permalänk: https://www.webforum.nu/p/983189

---

Tråden på webben: https://www.webforum.nu/amne/asp/71450-resonse-write-blir-inte-som-jag-tänkt
