webForumDet fria alternativet

Active Server Pages error 'ASP 0140'

5 svar · 154 visningar · startad av costodia

costodiaMedlem sedan aug. 2000864 inlägg
#1

Jag får hela tiden felmeddelandet

Active Server Pages error 'ASP 0140' 

Page Command Out Of Order 

/sokmotor/search.asp, line 7 

The @ command must be the first command within the Active Server Page.

koden till index.asp ser ut så här

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html>

<head>
<meta name="GENERATOR" content="Microsoft FrontPage 3.0">
<title>Infosök - Din personliga sökmotor</title>
</head>

<body background="../images/bakbla.gif" bgcolor="#FFFFFF" vlink="#0000FF">

<table border="0" width="600">
  <tr>
    <td valign="top" width="71"><img src="../images/sep.gif" width="150" height="4" alt="sep.gif (69 bytes)"></td>
    <td width="521"><img src="../images/infosok.gif" WIDTH="300" HEIGHT="70"><p> </p>
    <table border="0">
      <tr>
        <td bgcolor="#F2F2F2">Välkommen till Infosök. här kan du söka och hitta den
        information just du letar efter. Tänk på att du bara kan använda <strong>ett</strong>
        sökord.</td>
      </tr>
    </table>
    <form action="search.asp" method="POST">
      <p><strong>Sök:</strong><br>
      <input type="text" size="20" name="sokning"><input type="submit" name="B1" value=" Sök "></p>
      <p> </p>
      <p><img src="../images/arrow.gif" WIDTH="15" HEIGHT="13"> <a href="addurl.asp">Lägg till en länk i vår
      växande databas</a></p>
    </form>
    </td>
  </tr>
</table>
</body>
</html>

och till search.asp så här

<%
Set Connection = Server.CreateObject("ADODB.Connection") 
Connection ="DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("db1.mdb") 

%>
<%@ LANGUAGE="VBScript" %>
<!--#include file="ADOVBS.inc"-->
<!--#include file="IASUtil.asp"-->
<%

	sokning = Request("sokning") 

	Set Connection = Server.CreateObject("ADODB.Connection")
	
	Connection.Open "DSN=link"

	SQLStmt = "SELECT * FROM Link "
	SQLStmt = SQLStmt & "WHERE beskrivning LIKE '%" & sokning & "%' "
	SQLStmt = SQLStmt & "OR "
	SQLStmt = SQLStmt & "titel LIKE '%" & sokning & "%' "
	SQLStmt = SQLStmt & "ORDER BY Titel "

	Set RS = Connection.Execute(SQLStmt)
%>
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html>

<head>
<title>Infosök - Resultat sökning</title>
</head>

<body bgcolor="#FFFFFF" background="../images/bakbla.gif">

<table border="0" cellpadding="0" cellspacing="0" width="600">
  <tr>
    <td valign="top" rowspan="2" width="100"><img src="../images/sep.gif" width="150" height="4" alt="sep.gif (69 bytes)"></td>
    <td width="500"><img src="../images/infosok.gif" WIDTH="300" HEIGHT="70"><hr size="1" color="#000000">
<%
	CurrentRecord = 0

	Do While CheckRS(RS)%>
    <div align="left"><table border="0" width="500">
      <tr>
        <td><a href="<%= RS("url") %>"><font size="3"><strong><%= RS("titel") %></strong></font></a></td>
      </tr>
      <tr>
        <td><blockquote>
          <p><%= RS("beskrivning") %> </p>
        </blockquote>
        </td>
      </tr>
      <tr>
        <td><blockquote>
          <p><a href="<%= RS("url") %>"><%= RS("url") %></a><font size="2"> - <%= RS("datum") %></font></p>
        </blockquote>
        </td>
      </tr>
    </table>
    </div><%		RS.MoveNext
		CurrentRecord = CurrentRecord + 1
	Loop
%>
<p> </p>
    <p align="center"><%	If CurrentRecord = 0 Then %><strong>Tyvärr fanns det ingenting som matchade din sökning.</strong><br>
    <a href="index.asp">Klicka här för att försöka igen</a><%	End If %></td>
  </tr>
</table>
</body>
</html>
<%	Connection.Close %>

jag är inte riktigt säker på att min databaskoppling är rätt, jag har hämtat scriptet från http://www.idg.se/mikrodatorn/webbmastern/md9710/ och där finns tyvärr inget om datbaskoppling utan de föresetter att man gör det via iisen men eftersom min webplats ligge rpå ett hotell så går tyvärr inte det för mig.
Så om någon vet eller vet någonstans man kan hittat info om sånna här kopplingar så är jag mycket tacksam.

iasutil.asp ser ut så här:

<%
Set Connection = Server.CreateObject("ADODB.Connection") 
Connection ="DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("db1.mdb") 

%>
<script language=VBScript runat=Server>
Function CheckRequest(RS, ReqParam)  
	On Error Resume Next
	If IsEmpty(Request(ReqParam)) Then
		CheckRequest = RS(ReqParam)
		If Err Then CheckRequest = ""
	Else
		CheckRequest = Request(ReqParam)
	End If
End Function

Function CheckRS(RS)
	On Error Resume Next
	bEOF = RS.EOF
	If Err Or bEOF Then
		CheckRS = False
	Else
		CheckRS = True
	End If
End Function

Function CheckNextRS(RS)
	On Error Resume Next
	If RS Is Nothing Then
		CheckNextRS = False
	Else
		EOF = RS.EOF
		If Err Or EOF Then
			CheckNextRS = False
		Else
			CheckNextRS = True
		End If
	End If
End Function

</script>

obs, jag har lagt in <%
Set Connection = Server.CreateObject("ADODB.Connection")
Connection ="DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("db1.mdb")

%>
i alla filer.
Mvh Martin Persson
www.Costodia.com

[Redigerat av costodia den 14 jan 2001]

@ndersMedlem sedan juni 200032 969 inlägg
#2

det står ju i felmeddelandet precis vad som är fel!

raden <%@ LANGUAGE="VBScript" %> måste ligga överst i filen!

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
if i'm not back in five minutes, just wait longer.</A>

GrummelMedlem sedan juni 2000112 inlägg
#3

Ta bort raden 7 från search.asp

<%@ LANGUAGE="VBScript" %>

och prova.

------------------
"Den sanna kunskapen är erfarenhet" - Albert Einsten

[Redigerat av Grummel den 14 jan 2001]

costodiaMedlem sedan aug. 2000864 inlägg
#4

Så nu blev jag av med det felmedelandet men nu verkar det ha blivit fel i rad 23 istället nu ser scriptet ut så här alltså

<%@ LANGUAGE="VBScript" %>
<%
Set Connection = Server.CreateObject("ADODB.Connection") 
Connection ="DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("db1.mdb") 
%>

<!--#include file="ADOVBS.inc"-->
<!--#include file="IASUtil.asp"-->
<%

	sokning = Request("sokning") 

	Set Connection = Server.CreateObject("ADODB.Connection")
	
	Connection.Open "DSN=link"

	SQLStmt = "SELECT * FROM Link "
	SQLStmt = SQLStmt & "WHERE beskrivning LIKE '%" & sokning & "%' "
	SQLStmt = SQLStmt & "OR "
	SQLStmt = SQLStmt & "titel LIKE '%" & sokning & "%' "
	SQLStmt = SQLStmt & "ORDER BY Titel "

	Set RS = Connection.Execute(SQLStmt)
%>
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html>

<head>
<title>Infosök - Resultat sökning</title>
</head>

<body bgcolor="#FFFFFF" background="../images/bakbla.gif">

<table border="0" cellpadding="0" cellspacing="0" width="600">
  <tr>
    <td valign="top" rowspan="2" width="100"><img src="../images/sep.gif" width="150" height="4" alt="sep.gif (69 bytes)"></td>
    <td width="500"><img src="../images/infosok.gif" WIDTH="300" HEIGHT="70"><hr size="1" color="#000000">
<%
	CurrentRecord = 0

	Do While CheckRS(RS)%>
    <div align="left"><table border="0" width="500">
      <tr>
        <td><a href="<%= RS("url") %>"><font size="3"><strong><%= RS("titel") %></strong></font></a></td>
      </tr>
      <tr>
        <td><blockquote>
          <p><%= RS("beskrivning") %> </p>
        </blockquote>
        </td>
      </tr>
      <tr>
        <td><blockquote>
          <p><a href="<%= RS("url") %>"><%= RS("url") %></a><font size="2"> - <%= RS("datum") %></font></p>
        </blockquote>
        </td>
      </tr>
    </table>
    </div><%		RS.MoveNext
		CurrentRecord = CurrentRecord + 1
	Loop
%>
<p>&nbsp;</p>
    <p align="center"><%	If CurrentRecord = 0 Then %><strong>Tyvärr fanns det ingenting som matchade din sökning.</strong><br>
    <a href="index.asp">Klicka här för att försöka igen</a><%	End If %></td>
  </tr>
</table>
</body>
</html>
<%	Connection.Close %>

och rad 23 är då

Microsoft OLE DB Provider for ODBC Drivers error '80040e37' 

[Microsoft][ODBC Microsoft Access Driver] The Microsoft Jet database engine cannot find the input table or query 'Link'. Make sure it exists and that its name is spelled
correctly. 

/sokmotor/search.asp, line 23

och rad 23 är denna

Set RS = Connection.Execute(SQLStmt)

men som jag förstår det så slutar den rätt men ändå blir det fel, när man söker här http://www.costodia.com/sokmotor/ kan det vara något annat fel databaskopplingen?

------------------
Mvh Martin Persson
www.Costodia.com

GrummelMedlem sedan juni 2000112 inlägg
#5

Som felet lyder så finns det antagligen ingen tabell med namnet "Link" i din databas. Kolla så att du stavat rätt.

Felet ligger alltså i strängen SQLStmt, så kolla att du verkligen skrivit rätt.

------------------
"Den sanna kunskapen är erfarenhet" - Albert Ensten

costodiaMedlem sedan aug. 2000864 inlägg
#6

Jo det har jag redan kollat, och tabellen heter link så dte är inte där felete ligger tyvärr.

------------------
Mvh Martin Persson
www.Costodia.com

141 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
138 ms — hämta tråd, inlägg och bilagor (db)