Hoppa till innehåll

Databaser


Mezox

Rekommendera inlägg

Skrivet (redigerat)

Tack, nu har jag koden (men det funkar fortfarande inte):

 

<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<%
Set db = Server.CreateObject("ADODB.Connection")
db.Provider = "Microsoft.Jet.OLEDB.4.0"
db.Open Server.MapPath("IP.mdb")
Set rs = Server.CreateObject("ADODB.Recordset")
%>
<HTML>
<HEAD><TITLE>Gör din egen webbsida - 5(5)</TITLE></HEAD>
<BODY>

<%
namn = Session("namn")
IP = request.ServerVariables("REMOTE_ADDR")
email = Session("epost")

sql= "INSERT INTO IP (Namn, IP, Email) Values (namn, IP, email)"
db.Execute sql, 1, 2


path = Server.MapPath("/Mezox")
fil = path & "/Hemsida/" & Session("url")

Set MittTxtObj = CreateObject("Scripting.FileSystemObject")
Set MinFil = MittTxtObj.CreateTextFile(fil,True)

MinFil.WriteLine("<HTML><HEAD><TITLE>" & Session("rubrik") & "</TITLE></HEAD>")
MinFil.WriteLine("<BODY BGCOLOR =" & Session("bfarg") & " TEXT = "& Session("tfarg") & ">")  
MinFil.WriteLine("<H1><CENTER>")
MinFil.WriteLine(Session("rubrik"))
MinFil.WriteLine("</CENTER></H1>")
MinFil.WriteLine(Session("text"))
MinFil.WriteLine("<HR>")
MinFil.WriteLine("<CENTER>Denna sida skapades" & date & " av <A HREF = mailto:"& Session("epost") & ">" & Session("namn") & "</A>")
MinFil.WriteLine("</CENTER></BODY></HTML>")
MinFil.Close
%>
<H1>Gör din egen webbsida</H1>
<H2>Steg 5(5) - Sidan är skapad</H2>
Klicka <A HREF = <%=Session("url")%>>här</A> för att gå till den!
</BODY></HTML>

Felmeddelande:

 

Microsoft JET Database Engine error '80040e14'

 

Syntax error in FROM clause.

 

/Mezox/Hemsida/steg5.asp, line 18

Redigerat av Mezox
Länk till kommentar
Dela på andra sajter

1, 2 som står efter dbExecute sql tror jag är någon slags inställning som behövs när man använder den metoden som du använde först för att öppna databasen. Men den behövs normalt inte och framförallt så hör den till Recordset-objektet som används för att hämta ut poster. Med andra ord så ska du ta bort ", 1, 2".

Länk till kommentar
Dela på andra sajter

Hur kunde jag missa det? Säkert något mer fel som jag har missat men hursomhelst.

Nu tolkar Sql det som att du vill sätta in något som den inte riktigt vet vad det är i databasen. Det är ingen text för det står inte inom citattecken. Det är inget tal. Men det är ingen variabel heller, varför det inte är det blir lite omständigt att förklara, men du får istället göra såhär;

"INSERT INTO IP (Namn, IP, Email) Values ("&namn&", "&IP&", "&email&")"

 

Men det räcker inte med det utan det är text som du vill sätta in eller hur? Och text skriver vi... inom citattecken.

Problemet är ju att det är inte ordet namn eller IP vi vill sätta in. Varför då citattecken? Jo, om vi tar koden jag postade alldeles ovan så sätter den in variablerna i Sql-strängen. Om vi skulle köra koden så skulle Sql-strängen se ut såhär om namn var nico, IP var 127.0.0.0 och email var [email protected]:

INSERT INTO IP (Namn, IP, Email) Values (nico, 127.0.0.0, [email protected])

 

Alltså får vi använda citattecken runtom. Men gissa vad; det räcker inte med det! :P

Om du skulle skriva dit ett dubbelt citattecken, ja då skulle du ju avsluta strängen med värdet för variabeln Sql som vi nu håller på och skapar så vi måste använda enkla istället. Nu funkar iaf det! :)

 

"INSERT INTO IP (Namn, IP, Email) Values ('"&namn&"', '"&IP&"', '"&email&"')"

Länk till kommentar
Dela på andra sajter

Nu är det iaf inget fel på koden, funkar dessutom utmärkt på min server. Men kolla att;

¤Databasen inte är skrivskyddad.

¤Att alla användare kan läsa och skriva till mappen där databasen ligger.

¤Databasen inte är öppen.

Länk till kommentar
Dela på andra sajter

Mhm... webbaserad FTP är ju alltid lite krångligare. Men kolla om du kan hitta något som heter File Permissions eller liknande. Har för mig att det finns dels en förenklad FTP/upload och så en mer avancerad på WebNG. Det skulle kunna finnas rätt inställningar i den avancerade versionen.

Länk till kommentar
Dela på andra sajter

Skrivet (redigerat)

Ja, Databasen funkar.

Jag kan fortfarande inte skriva till filen men jag bryr mig inte, bara jag fick databasen att fungera, tack så mycket nico.

 

Förresten, när läggs din sida upp, jag vill gärma se den!

Redigerat av Mezox
Länk till kommentar
Dela på andra sajter

Bra att du fick det att funka tillslut! :)

Vill du så kan du ju alltid testa på någon annan gratishost och se om det är WebNg's inställningar eller koden eller databasen som verkar vara felet.

 

Slutet av den här veckan om allt går som det ska.

Länk till kommentar
Dela på andra sajter

Gå med i konversationen

Du kan skriva nu och registrera dig senare. Om du har ett konto, logga in nu för att posta med ditt konto.

Gäst
Svara på det här ämnet...

×   Klistrade in som rich text.   Klistra in som vanlig text istället

  Endast 75 emojis är tillåtet.

×   Din länk har automatiskt inbäddats.   Visa som en länk istället

×   Ditt tidigare innehåll har återställts.   Rensa redigeraren

×   Du kan inte klistra in bilder direkt. Ladda upp eller infoga bilder från URL.

×
  • Skapa ny...