Avatar billede doeboy Nybegynder
04. august 2003 - 09:48 Der er 17 kommentarer og
1 løsning

Gem funktion

Hvorfor  virker  nedestående kode ikke helt
nå jeg skal have den til at gemme kommer den med fejl fordi at den vil hente en querystring som ikke er der nå man trykker edit
vil gerne have sådan samme fil gemmer istedet for en seperat fil


<%@LANGUAGE="VBSCRIPT"%>

<!--#include file="forbindelse.asp" -->


<%

if mode = "edit" then


set update = server.createobject ("adodb.recordset")
update.open " select * from forums where fid = " & request.form("fid") ,database, 2 ,2

update("navn") = Request.Form("navn")
update("beskriv") = Request.Form("beskriv")

update.Update

response.redirect("default.asp")

end if

%>



<%

if mode <> "edit" then

Set personer = Server.CreateObject ("ADODB.Recordset")
personer.Open "SELECT * FROM forums where fid = " & request.querystring("fid") , database
%>

<html>
<body>

<form method="post" Action="editforums.asp">


<input type="text"  name="navn" value="<% = personer.fields("navn") %>"> forum name<br>
<input type="text"  size="30" name="beskriv" value="<% = personer.fields("beskriv") %>"> Forum Description<br>


<input type="submit" value="edit" name="edit"><br>
<input type="hidden" name="fid" value="<% = personer.Fields("fid")%>">
</form>
<% end if %>
</body>
</html>


[Microsoft][ODBC Microsoft Access Driver] Syntax error (missing operator) in query expression 'fid ='.

/doeboydk/admin/editforums.asp, line 32
Avatar billede medions Nybegynder
04. august 2003 - 09:51 #1
Prøv sådan her:

Set personer = Server.CreateObject ("ADODB.Recordset")
personer.Open "SELECT * FROM forums where fid = " & CInt(request.querystring("fid")) , database
%>

//>rune
Avatar billede medions Nybegynder
04. august 2003 - 09:52 #2
Ahh oki, jeg tror din fejl er at du bruger QueryString i den ene SQL forspørgsel og Request.Form() i den anden!

Hvis ikke det er fejlen så prøv evt. at konvetere alle dine data til Integerværdier!

update.open " select * from forums where fid = " & CInt(request.form("fid")) ,database, 2 ,2

//>Rune
Avatar billede doeboy Nybegynder
04. august 2003 - 10:56 #3
får samme fejl med
update.open " select * from forums where fid = " & CInt(request.form("fid")) ,database, 2 ,2

det er meningen  at hvis man trykker edit  så skal den gemme / opdatere Forum beskrivelsen
altså man udfylder  navn / beskrivelse tryk edit  og følgende skal ske

<%

if mode = "edit" then


set update = server.createobject ("adodb.recordset")
update.open " select * from forums where fid = " & request.form("fid") ,database, 2 ,2

update("navn") = Request.Form("navn")
update("beskriv") = Request.Form("beskriv")

update.Update

response.redirect("default.asp")

end if

%>
vil gerne have den gemmer fra samme fil istedet for at der bruges en anden fil til at opdatere posten med
Avatar billede medions Nybegynder
04. august 2003 - 11:00 #4
Ok, så gør hellere sådan her, det er jeg selv lidt mere tryg ved:

<%

if mode = "edit" then
strSQL = "UPDATE forums SET [navn] = '" & Request.Form("navn") & "', beskriv = '" & Request.Form("beskriv") & "' WHERE fid = " & CInt(Request.Form("fid")
database.Execute(strSQL)

response.redirect("default.asp")
end if
%>

//>Rune
Avatar billede doeboy Nybegynder
04. august 2003 - 12:40 #5
Jeg får samme problem med ^^ eksempel du kommer med
den går ind og vil hente querystringen  når den blot skal gemme
Avatar billede medions Nybegynder
04. august 2003 - 12:57 #6
Altså indsætte ny record eller redigere?

//>Rune
Avatar billede medions Nybegynder
04. august 2003 - 13:08 #7
Thx 4 Poinz

//>Rune
Avatar billede doeboy Nybegynder
04. august 2003 - 13:09 #8
Hovsa kom til at acpetere svar =) selvom det ikke virked
ja det er når jeg redigere forum sektion navn / beskrivelse
det er derfor jeg har en query string  der henter ("fid")    (forum id)
men af en eller ander grund henter den også den når den skal gemmes
Avatar billede medions Nybegynder
04. august 2003 - 13:11 #9
Du er nødt til at prøve at beskrive det noget bedre, jeg forstår ik' hvad du mener!

//>Rune
Avatar billede doeboy Nybegynder
04. august 2003 - 13:17 #10
Ok dette her er originalen  hvor jeg henter posten  jeg skal opdatere
mit forum beskrivelser  (editforums.asp)

<%

Set personer = Server.CreateObject ("ADODB.Recordset")
personer.Open "SELECT * FROM forums where fid = " & request.querystring("fid") , database
%>

<html>
<body>

<form method="post" Action="editforums.asp">


<input type="text"  name="navn" value="<% = personer.fields("navn") %>"> forum name<br>
<input type="text"  size="30" name="beskriv" value="<% = personer.fields("beskriv") %>"> Forum Description<br>


<input type="submit" value="edit" name="edit"><br>
<input type="hidden" name="fid" value="<% = personer.Fields("fid")%>">
</form>

</body>
</html>
Avatar billede medions Nybegynder
04. august 2003 - 13:18 #11
Ok, er der nogen fejl i den?

//>Rune
Avatar billede medions Nybegynder
04. august 2003 - 13:19 #12
Det kunne evt. være fordi du ikke har nogle properties på din recordset åbning!

Prøv sådan her!
<%

Set personer = Server.CreateObject ("ADODB.Recordset")
personer.Open "SELECT * FROM forums where fid = " & request.querystring("fid") , database, 1, 1
%>

<html>
<body>

<form method="post" Action="editforums.asp">


<input type="text"  name="navn" value="<% = personer.fields("navn") %>"> forum name<br>
<input type="text"  size="30" name="beskriv" value="<% = personer.fields("beskriv") %>"> Forum Description<br>


<input type="submit" value="edit" name="edit"><br>
<input type="hidden" name="fid" value="<% = personer.Fields("fid")%>">
</form>

</body>
</html>

//>Rune
Avatar billede doeboy Nybegynder
04. august 2003 - 13:19 #13
her er den der skal gemme dokumentet så


<%
set update = server.createobject ("adodb.recordset")
update.open " select * from forums where fid = " & request.form("fid") ,database, 2 ,2
update("navn") = Request.Form("navn")
update("beskriv") = Request.Form("beskriv")
update.Update
response.redirect("default.asp")
%>
Jeg vil gerne  have  lagt dem samme til 1 fil istedet for 2 filer
da jeg efter hånden har mange ala    Nybesked.asp  / gembesked.asp
så jeg vil gerne halvere mit antal af filer ved at ligge dem sammen
Avatar billede medions Nybegynder
04. august 2003 - 13:22 #14
Ahh ok..

Du gør så sådan her:

<form method="post" Action="editforums.asp?Save=Record">

og når du du så vil gemme det skriver du
<%
  If Request.QueryString("Save") = "Record" Then
    '** Gemme kode!
  End If
%>

//>Rune
Avatar billede doeboy Nybegynder
04. august 2003 - 13:23 #15
problemet er  at  if sætningen  ikke virker helt som den skal
altså  tryk edit  og den gemmer ^  som overstående
If mode = "edit"  skal der gemmes
ellers skal den bare læse siden ind som normalt
men når den skal gemme  prøver den stadig at hente querystringen som der ikke skal bruges til noget når man gemmer
Avatar billede doeboy Nybegynder
04. august 2003 - 13:25 #16
Ok takker prøver nå jeg kommer hjem igen
Avatar billede doeboy Nybegynder
04. august 2003 - 13:40 #17
Tak fik lige tid til at prøve det af nu Det virked Mange tak for Hjælpen!!
Avatar billede medions Nybegynder
04. august 2003 - 13:41 #18
Fair nok :-)

//>Rune
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester