webForumDet fria alternativet

Fel meddelande, mysql

ASP

7 svar · 225 visningar · startad av FIgg3

Medlem sedan sep. 2001354 inlägg
Frågan#1

Hejsan, jag vet ej om detta är rätt forum så skulle det var fel så ber jag om ursäkt, i alla fall till min fråga nu vad är fel i min kod? jag får detta fel meddelnadet:

Feltyp:
ADODB.Recordset (0x800A0E78)
Åtgärden är inte tillåten när objektet är stängt.
/forum_mysql/default.asp, line 31

När jag kör denna koden:

<% 
If Request.querystring("add") = "new" then 

namn = Request.Form("namn") 
besk = Request.Form("besk") 
adress = Request.Form("adress") 

Set Conn = Server.CreateObject("ADODB.Connection") 
Set Databas = Server.CreateObject("ADODB.Recordset") 

Conn.Open "driver=MySQL;server=localhost;uid=figg3;pwd=1234;database=forum" 
MySQL = "INSERT INTO kats (fldnamn, fldbesk, fldadress) VALUES('" & namn & "', '" & besk & "', '" & adress & "')" 
Conn.Execute(MySQL) 

Databas.Close 
Set Databas = nothing 
Conn.Close 
Set Conn = nothing 
Response.redirect "default.asp?show=poster" 

End If 
%>

Informationen läggs till i databasen, det kollade jag upp :q

Medlem sedan nov. 20017 144 inlägg
#2

Läs här:
http://www.webforum.nu/showthread.php?s=&threadid=7551&highlight=till�ten+n�r+objektet
Jag tror att du hittar vad du söker.

Det beror på at tdu stänger ett recordset som aldrig öppnas (objRS3)

Du behöver inte skapa några recordset när du gör operationer som inte returnerar något (INSERT/UPDATE/DELETE).

Medlem sedan sep. 2001354 inlägg
#3

Tackar, men

Men jag fattar inte riktigt vad det är jag ska ändra? jag kan juh inte ta bort någon av dessa:

Set Conn = Server.CreateObject("ADODB.Connection")
Set Databas = Server.CreateObject("ADODB.Recordset")

Jag får samma fel på denna koden:

<%

Set Conn   = Server.CreateObject("ADODB.Connection")
Set Databas = Server.CreateObject("ADODB.Recordset")
  
   Conn.Open "driver=MySQL;server=localhost;uid=figg3;pwd=XXXX;database=forum"
   MySQL = "SELECT * FROM kats" 
   Conn.Execute(MySQL) 

       Do While Not Databas.EOF
       Response.Write Databas("namn") & "<br>"
       Databas.MoveNext
       Loop
 
Databas.Close 
Set Databas = nothing 
Conn.Close 
Set Conn = nothing 
%>
Medlem sedan okt. 20005 273 inlägg
#4
[red]
<%

Set Conn   = Server.CreateObject("ADODB.Connection")

  
   Conn.Open " driver=MySQL;server=localhost;uid=figg3;pwd=XXXX;database=forum"
   MySQL = "SELECT * FROM kats" 
   Databas = Conn.Execute(MySQL) 

       Do While Not Databas.EOF
       Response.Write Databas("namn") & "<br>"
       Databas.MoveNext
       Loop

Set Conn = nothing 
%>
[/red]

Det ska väl räcka :)

Medlem sedan nov. 20017 144 inlägg
#5

Que??!!??!

Måste man inte ha ett recordset när han har: Databas("namn") ?

Medlem sedan sep. 2001354 inlägg
#6

Hejsan, Måste nog hålla med jesper där eller? för koden funkade inte i alla fall

Medlem sedan okt. 20005 273 inlägg
#7
[red]
<%

Set Conn   = Server.CreateObject("ADODB.Connection")

  
   Conn.Open " driver=MySQL;server=localhost;uid=figg3;pwd=XXXX;database=forum"
   MySQL = "SELECT * FROM kats" 
   Set Databas = Conn.Execute(MySQL) 

       Do While Not Databas.EOF
       Response.Write Databas("namn") & "<br>"
       Databas.MoveNext
       Loop

Set Conn = nothing 
%>
[/red]

Så nu ska det funka....för att connection objectet skapar ett recordset som heter Databas när man executar MySQL

Medlem sedan sep. 2001354 inlägg
#8

skulle bara tacka för svaret, funkar nu

259 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
129 ms — deklarationer (db)
0 ms — hämta statistik (cache)
125 ms — hämta tråd, inlägg och bilagor (db)
131 ms — ändringar (db)