Toon posts:

[asp] Foutmelding bij Asp guestbook

Pagina: 1
Acties:
  • 57 views sinds 30-01-2008

Verwijderd

Topicstarter
Ik krijg de volgende melding bij het willen versturen van een simple guestbook entry

db = acces

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

[Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 1.

/save.asp, line 21

<%
Dim guestbook
Dim Rs
Dim sql
Dim guest_ip

Function RemoveHTML(byVal sInput)
'same fixQuotes function from step2.asp
RemoveHTML = Replace(sInput, "<img src", "????")
End Function
'Create an ADO connection and recordset object
Set guestbook = Server.CreateObject("ADODB.Connection")
Set Rs = Server.CreateObject("ADODB.Recordset")
'Set an active connection and select fields from the database
guestbook.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("guestbook.mdb")
sql= "SELECT sign_date, name, email, location, comments, guest_ip FROM guests;"
'Set the lock and cursor type
Rs.CursorType = 1
Rs.LockType = 3

21 -- > Rs.Open sql, guestbook 'Open the recordset with sql query

Rs.AddNew 'Prepare the database to add a new record and add

Rs.Fields("sign_date") = Request.Form("sign_date")
Rs.Fields("name") = Request.Form("name")
Rs.Fields("email") = Request.Form("email")
Rs.Fields("location") = Request.Form("location")
Rs.Fields("comments") = RemoveHTML(Request.Form("comments"))
Rs.Fields("guest_ip") = Request.Form("ip")

Rs.Update 'Save the update
Rs.Close
Set Rs = Nothing
Set guestbook = Nothing
%>
<script>
location = "Index.asp";
</script>

  • wizzkizz
  • Registratie: April 2003
  • Laatst online: 19-12-2025

wizzkizz

smile...tomorrow will be worse

controleer eens of je geen tikvout hebt gemaakt in de colomnamen

wat opmerkingen:
- waarom gebruik je niet een simpele INSERT INTO (geparameteriseerd uiteraard) ?
- als je het zo doet, kun je beter een where-statement toevoegen die sowieso niet matched. nu zit je met een volle recordset waar je 0.0 mee doet (stel dat het bijv. 10000 reacties worden, beetje zonde)..
- je code tussen code-tags zetten leest prettiger
- waarvoor dient die removeHTML functie :?
- je methode om het guest_ip op te slaan is niet erg betrouwbaar (beter vraag je die in je script pas op met Request.serverVariables( "REMOTE_ADDR" ))

[ Voor 106% gewijzigd door wizzkizz op 11-06-2005 14:23 . Reden: wat opmerkingen toegevoegd ]

Make it idiot proof and someone will make a better idiot.
Real programmers don't document. If it was hard to write, it should be hard to understand.


Verwijderd

Topicstarter
hetgeen irritant is dat dit scripts zijn die ik niet zelf heb gemaakt, via hotscripts.. ik zoek dus een heel dood simpel naam,email, comment gastenboekje...

Verwijderd

Zeker met een INSERT INTO is wat simpeler. Waar je tegen problemen aanloopt zijn de naamgevingen van je fields; name, location etc die zijn erg algemeen en vaak gereserveerd, ik zie zowiezo eerst eens hernoemen.

[ Voor 26% gewijzigd door Verwijderd op 11-06-2005 14:47 ]


  • Guldan
  • Registratie: Juli 2002
  • Laatst online: 05-05 21:55

Guldan

Thee-Nerd

heb je wel een ODBC link gemaakt naar de database?.. Anders kan ie helemaal geen DB vinden.

You know, I used to think it was awful that life was so unfair. Then I thought, wouldn't it be much worse if life were fair, and all the terrible things that happen to us come because we actually deserve them?


  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 04-05 14:55

Janoz

Moderator Devschuur®

!litemod

P&W is bedoeld voor problemen tijdens het programmeren. Het is niet bedoeld als supportdesk voor producten van derden. Daarnaast verwachten we ook wel iets meer in een topicstart dan alleen een stuk source met foutmelding. Voordat je weer een topic opend kun je beter even het beleid van Programming & Webscripting doornemen.

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'

Pagina: 1

Dit topic is gesloten.