webForumDet fria alternativet

Rätt??

ASP

12 svar · 205 visningar · startad av jwradhe

Medlem sedan juni 2002711 inlägg
Frågan#1
<%
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & db
SQL = "SELECT * From inlagg order by ID desc"
if request.querystring("bort") = "ja" then
Set RecSet2 = Server.CreateObject("ADODB.Recordset")
Addera = "SELECT * FROM gastbok where id ="& request.querystring("id")
RecSet2.Open Addera, Connect, 3, 3
RecSet2.delete
RecSet2.update
RecSet2.Close
Set RecSet2 = nothing 
end if

Set RecSet = connect.execute(SQL)
%>
Medlem sedan feb. 20012 412 inlägg
#2
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & db

if request.querystring("bort") = "ja" then

sql ="DELETE FROM gastbok where id ="& request.querystring("id")
Connect.execute(sql),,128

end if
Medlem sedan juni 2002711 inlägg
#3

funkar inte.

Medlem sedan juni 2002711 inlägg
#4

här e hela koden istället

<!-- #include file="adovbs.inc" -->
<!-- #include file="settings.asp" -->
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body bgcolor="#CCCCCC" text="#000000">
<div align="center">
  <p>&nbsp;</p>
  <br><%
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & db

if request.querystring("bort") = "ja" then

sql ="DELETE FROM gastbok where id ="& request.querystring("id")
Connect.execute(sql),,128

end if
%>
  <table style="border-top: #000000 1px solid;border-bottom: #000000 1px solid;border-left: #000000 1px solid;border-right: #000000 1px solid;" width="450" border="0" cellspacing="0" cellpadding="0">
    <tr> 
      <td align="center" valign="top">
<table width="440" border="0" cellspacing="0" cellpadding="0">
          <tr>
            <td><% if session("inloggad") <> "ja" then %>
<form name="form" method="post" action="admin.asp?loggain=ja"> ' länkad till admin.asp
Lösenord
<br>
<input name="los" type="password" id="los">
<br>
<input type="submit" name="Submit" value="Submit">
</form>
              <p><br>
                <% 
response.write session("fel") 'om fel lösen har fyllts i kommer det sägas här
else 
%>
                <a href="admin.asp?loggaut=ja">Logga ut</a> 
                <% do until recset.EOF %>
                <br>
              <hr size="1">
              <font face="Verdana, Arial, Helvetica, sans-serif" size="1"><%=RecSet("amne")%> 
              - <%=RecSet("IP")%> <br>
              <%=RecSet("meddelande")%> <br>
              <br>
              Skrivet av: <a href="mailto:<%=RecSet("email")%>"><%=RecSet("namn")%></a> 
              - 
              <%If RecSet("hemsida") <> "" Then%>
              <a href="<%=RecSet("hemsida")%>">Hemsida</a> 
              <%End If%>
              <br>
              Svar: 
              <%If RecSet("svar") <> "" Then%>
              <%=RecSet("svar")%> 
              <%else %>
              Inget svar . 
              <%End If%>
              </font> <br>
              <% 
RecSet.MoveNext   
Loop                       

RecSet.Close
Connect.Close 
Set RecSet = nothing
Set Connect = nothing
%>
              <br><% if session("inloggad") = "ja" then %>
<A HREF="gastbok.asp?bort=ja&id=<%=recset("id")%>">Ta bort</A>
<% end if %>

              <br>
              <hr size="1">
              <br>
              <br>
              <% end if %>
              <%
if request.querystring("loggain") = "ja" then 
if request.form("los") = "jimmy" then

session("inloggad") = "ja"

else
session("fel") = "fel lösen !"

end if 
end if

if request.querystring("loggaut") = "ja" then session.abandon 
%>
          </tr>
        </table>
      </td>
    </tr>
  </table>
</div>
</body>
</html>
Medlem sedan juni 200032 967 inlägg
#5

På vilket sätt fungerar det inte?

Medlem sedan jan. 20022 440 inlägg
#6

Koden är inte det viktiga, det viktiga är att skicka med felmeddelande och raderna runt det felmeddelandet pekar på. Pekar felmeddelandet på rs.Open SQL, Conn,,128 tex så betyder det att något är fel innan den raden.

Det är jättejobbigt att börja kika igenom så långa kodstycken.

Medlem sedan juni 2002711 inlägg
#7

feltext:

Microsoft JET Database Engine error '80040e10'

No value given for one or more required parameters.

/jimmyw/admin.asp, line 26

kod:

<!-- #include file="adovbs.inc" -->
<!-- #include file="settings.asp" -->
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body bgcolor="#CCCCCC" text="#000000">
<div align="center"> 
  <p>
    <%
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & db
SQL = "SELECT * From inlagg order by ID desc"
if request.querystring("bort") = "ja" then
Set RecSet2 = Server.CreateObject("ADODB.Recordset")
Addera = "SELECT * FROM inlagg where id ="& request.querystring("id")
RecSet2.Open Addera, Connect, 3, 3
RecSet2.delete
RecSet2.update
RecSet2.Close
Set RecSet2 = nothing   <---- rad 26
end if

Set RecSet = connect.execute(SQL)
%>
  </p>
  <table style="border-top: #000000 1px solid;border-bottom: #000000 1px solid;border-left: #000000 1px solid;border-right: #000000 1px solid;" width="450" border="0" cellspacing="0" cellpadding="0">
    <tr> 
      <td align="center" valign="top">
<table width="440" border="0" cellspacing="0" cellpadding="0">
          <tr>
            <td><% if session("inloggad") <> "ja" then %>
<form name="form" method="post" action="admin.asp?loggain=ja"> ' länkad till admin.asp
Lösenord
<br>
<input name="los" type="password" id="los">
<br>
<input type="submit" name="Submit" value="Submit">
</form>
              <p><br>
                <% 
response.write session("fel") 'om fel lösen har fyllts i kommer det sägas här
else 
%>
                <a href="admin.asp?loggaut=ja">Logga ut</a> 
                <% do until recset.EOF %>
                <br>
              <hr size="1">
              <font face="Verdana, Arial, Helvetica, sans-serif" size="1"><%=RecSet("amne")%> 
              - <%=RecSet("IP")%> <br>
              <%=RecSet("meddelande")%> <br>
              <br>
              Skrivet av: <a href="mailto:<%=RecSet("email")%>"><%=RecSet("namn")%></a> 
              - 
              <%If RecSet("hemsida") <> "" Then%>
              <a href="<%=RecSet("hemsida")%>">Hemsida</a> 
              <%End If%>
              <br>
              Svar: 
              <%If RecSet("svar") <> "" Then%>
              <%=RecSet("svar")%> 
              <%else %>
              Inget svar . 
              <%End If%>
              </font> <br>
              <% if session("inloggad") = "ja" then %>
              <a href="gastbok.asp?bort=ja&id=<%=recset("id")%>">Ta bort</a> 
              <% end if %>
              <% 
RecSet.MoveNext   
Loop                       

RecSet.Close
Connect.Close 
Set RecSet = nothing
Set Connect = nothing
%>
              <br>
              <br>
              <hr size="1">
              <br>
              <br>
              <% end if %>
              <%
if request.querystring("loggain") = "ja" then 
if request.form("los") = "jimmy" then

session("inloggad") = "ja"

else
session("fel") = "fel lösen !"

end if 
end if

if request.querystring("loggaut") = "ja" then session.abandon 
%>
          </tr>
        </table>
      </td>
    </tr>
  </table>
</div>
</body>
</html>
Medlem sedan jan. 20022 440 inlägg
#8

<!-- #include file="adovbs.inc" -->
<!-- #include file="settings.asp" -->
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body bgcolor="#CCCCCC" text="#000000">
<div align="center">
<p>
<%

Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & db
if request.querystring("bort") = "ja" then
Addera = "DELETE FROM inlagg where id ="& request.querystring("id")
Connect.Execute Addera,,128

%>
</p>
<table style="border-top: #000000 1px solid;border-bottom: #000000 1px solid;border-left: #000000 1px solid;border-right: #000000 1px solid;" width="450" border="0" cellspacing="0" cellpadding="0">
<tr>
<td align="center" valign="top">
<table width="440" border="0" cellspacing="0" cellpadding="0">
<tr>
<td><% if session("inloggad") <> "ja" then %>
<form name="form" method="post" action="admin.asp?loggain=ja"> ' länkad till admin.asp
Lösenord
<br>
<input name="los" type="password" id="los">
<br>
<input type="submit" name="Submit" value="Submit">
</form>
<p><br>
<%
response.write session("fel") 'om fel lösen har fyllts i kommer det sägas här
else
%>
<a href="admin.asp?loggaut=ja">Logga ut</a>
<% do until recset.EOF %>
<br>
<hr size="1">
<font face="Verdana, Arial, Helvetica, sans-serif" size="1"><%=RecSet("amne")%>
- <%=RecSet("IP")%> <br>
<%=RecSet("meddelande")%> <br>
<br>
Skrivet av: <a href="mailto:<%=RecSet("email")%>"><%=RecSet("namn")%></a>
-
<%If RecSet("hemsida") <> "" Then%>
<a href="<%=RecSet("hemsida")%>">Hemsida</a>
<%End If%>
<br>
Svar:
<%If RecSet("svar") <> "" Then%>
<%=RecSet("svar")%>
<%else %>
Inget svar .
<%End If%>
</font> <br>
<% if session("inloggad") = "ja" then %>
<a href="gastbok.asp?bort=ja&id=<%=recset("id")%>">Ta bort</a>
<% end if %>
<%
RecSet.MoveNext
Loop

RecSet.Close
Connect.Close
Set RecSet = nothing
Set Connect = nothing
%>
<br>
<br>
<hr size="1">
<br>
<br>
<% end if %>
<%
if request.querystring("loggain") = "ja" then
if request.form("los") = "jimmy" then

session("inloggad") = "ja"

else
session("fel") = "fel lösen !"

end if
end if

if request.querystring("loggaut") = "ja" then session.abandon
%>
</tr>
</table>
</td>
</tr>
</table>
</div>
</body>
</html>

Medlem sedan jan. 20022 440 inlägg
#9

När du inte ska använda ett recordset finns det ingen anledning att skapa ett....

Medlem sedan mars 20015 287 inlägg
#10

jwradhe:
Inte för att klanka ner på dig, men jag tror att det kan vara en ide att försöka göra lite färre "kodväxlingar" (eller vad det nu heter.)

typ som här:

<%If RecSet("hemsida") <> "" Then%> 
<a href="<%=RecSet("hemsida")%>">Hemsida</a> 
<%End If%> 
<br> 
Svar: 
<%If RecSet("svar") <> "" Then%> 
<%=RecSet("svar")%> 
<%else %> 
Inget svar . 
<%End If%> 
</font> <br> 
<% if session("inloggad") = "ja" then %> 
<a href="gastbok.asp?bort=ja&id=<%=recset("id")%>">Ta bort</a> 
<% end if %>
Medlem sedan juni 2002711 inlägg
#11

va menar du?

Medlem sedan jan. 20022 440 inlägg
#12

Han menar att du ska inte använda dig så mycket växlingar mellan asp och html kod på det sättet du gör. Det blir väldigt svårt att överblicka koden och hitta fel mm.

Istället för det du gjorde där försök att lägga allting inuti asp koden och processa det som är HTML med response.write istället.

Medlem sedan mars 20015 287 inlägg
#13

Den största anledningen om inte annat är, vad jag har lärt mig, att inte servern behöver arbeta lika mycket om växlingarna hålls nere.
Sen är det väl iofs också lättare att följa koden.

I script som dessa kanske man inte "tjänar" så mycket på att spara in på växlingarna, men kan man göra det till en god vana tror jag nog man vinner på det i längden.

typ:

<%
If RecSet("hemsida") <> "" Then
	response.write "<a href="" & RecSet("hemsida") & "">Hemsida</a>"
End If
response.write "<br>Svar: "
If RecSet("svar") <> ""  then
	response.write RecSet("svar") 
else 
	response.write "Inget svar." 
End If
response.write "</font><br>"
if session("inloggad") = "ja" then
	response.write "<a href=""gastbok.asp?bort=ja&id=" & recset("id") & """>Ta bort</a>" 
end if
%>

(Bara för det finns det väl felaktigheter i den kod jag postar...)

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