webForumDet fria alternativet

Inloggad skapar ny post

ASPur ASP

28 svar · 1 110 visningar · startad av Trumpf

Medlem sedan feb. 2004213 inlägg
Frågan#1

Hej,
Behöver er hjälp......

Jag har ett formulär Och fyller man i det så ska man lägga till en id i accessbasen. Och det är i annonser.

Men hur gör jag det?

I min form som ser ut så här:
<form method="post" action="do_regga_annonser.asp?id=<%=request.querystring("id")%>" method="post">

Så här ser do_regga_annonser.asp ut.

<%

Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("db/members.mdb")&";"

SQL = "Insert into annonser(titel, forfattare) Values('"& titel &"','"& forfattare &"')"
Connect.Execute(SQL)

Response.Redirect "main.asp"

conn.close
set conn = nothing
%>

Mycket tacksam för snabbt svar......

Medlem sedan mars 20041 505 inlägg
#2

Felmeddelande är alltid bra att posta.

Medlem sedan feb. 2004213 inlägg
#3

Hej,
Det blir inget felmeddelande. Den bara tar upp main.asp sidan men det har inte blivit någon post postat.

Medlem sedan feb. 2004213 inlägg
#4

Upptäckte att han skapar endast en id och sen är alla fält tomma.
Varför postar den inte i det jag fyller i?

Medlem sedan juni 200032 969 inlägg
#5

har du skapat variablerna titel och forfattare då?

Medlem sedan dec. 200012 464 inlägg
#6

Därför att du inte tilldelar titel och forfattare något värde.

Ändra också

Response.Redirect "main.asp"

conn.close
set conn = nothing

till

connect.close
set connect = nothing
Response.Redirect "main.asp"
Medlem sedan feb. 2004213 inlägg
#7

I formuläret ja.

<form method="post" action="do_regga_annonser.asp?id=<%=request.querystring("id")%>" method="post">

<tr>
<td><b>Titel:</b><br><input type="text" name="titel" size="45"></td>
</tr>

<tr>
<td><b>Författare:</b><br><input type="text" name="forfattare" size="45"></td>
</tr>

<tr>
<td><input type="Submit" name="in" value="Lägg in annons"> </td>
</tr>
</form>

Medlem sedan feb. 2004213 inlägg
#8

OK. Testat att ändra det LarsG skrev men fälten är ändå tomma...........

Medlem sedan juni 200032 969 inlägg
#9

Du har väl fortfarande inte skapat variablerna?

Dessutom; använd [kod]-taggar när du postar kod.

Medlem sedan feb. 2004213 inlägg
#10

Hänger inte med. skapat variablerna?

Medlem sedan juni 200032 969 inlägg
#11
en_variabel = ett_värde

dvs

titel = request.form("titel")

du använder ju variablerna titel och forfattare i SQL-frågan, då måste de ju först och främst ha fått ett värde, annars är det inte så konstigt om det blir tomt.

(glöm inte heller att skydda dig mot sql injection)

Medlem sedan feb. 2004213 inlägg
#12

Var lägger jag in det det? Före Sql frågan samt hur ser det ut?

Medlem sedan juni 200032 969 inlägg
#13

Före Sql frågan

Yes, eftersom koden läses uppifrån och ner så måste det ligga ovanför SQL-frågan. Lägg in koden enl. mitt senaste exempel.

Medlem sedan feb. 2004213 inlägg
#14

titel = request.form("titel")

forfattare = request.form("forfattare")

SQL = "Insert into annonser(titel, forfattare) Values('"& titel &"','"& forfattare &"')"

Tusen tack det fungerar!!!!

Medlem sedan feb. 2004213 inlägg
#15

Du Anders!
Jag vill lägga in medlem nu fast det är ett tal i accessbasen.

När jag kör
SQL = "Insert into annonser(medlem, titel, forfattare) Values('"& titel &"','"& forfattare &"')"

Så får jag felmeddelande:

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

[Microsoft][ODBC Microsoft Access Driver] Number of query values and destination fields are not the same.

/do_regga_annonser.asp, line 25

Vad är det för fel då?
Har jag text så fungerar det, men kan inte ha text i detta fall. Då brackar allt.

Medlem sedan juni 20019 519 inlägg
#16

du har 3 fält men bara två värden...

medlem = request.form("medlem")
SQL = "Insert into annonser(medlem, titel, forfattare) Values([b]'" & medlem &"',[/b]'"& titel &"','"& forfattare &"')"

edit: @nders har rätt, fel av mig :P

Medlem sedan juni 200032 969 inlägg
#17

voigtann skrev:

du har 3 tabeller men bara två värden...

Nej, tre fält! Snälla, förvirra inte nybörjarna i onödan!

Medlem sedan feb. 2004213 inlägg
#18

Tack!

Medlem sedan feb. 2004213 inlägg
#19

Jag har en fortsäätningsfråga här.

Egentligen ska jag använda [kod]-taggar men jag vet inte vad Anders menade.
Jag får nog svar om det. Som sagt jag är endast hobby aspare. Och därför blir frågorna nog som dom är.

Ok en fråga till innan jag kan fortsätta själv förhoppningsvis.

När någon fyller i ett formulär med epost som exempel, så vill jag att det ska uppdatera den rätta id som gäller.
Nu får jag en ny id och det sätts in.

Min kod

<%
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("db/members.mdb")&";"

epost = request.form("epost")

SQL = "Insert into annonser(epost) Values('"& epost &"')"

Connect.Execute(SQL)
connect.close
set connect = nothing
Response.Redirect "main.asp"
%>

Och i min form har jag
<form method="post" action="do_skicka_kop.asp?id=<%=request.querystring("id")%>" method="post">

Är det någon som vet?

Medlem sedan dec. 2006608 inlägg
#20

Om du skriver [ code] ...din kod... [ /code] fast då utan de mellanslag jag lagt till innanför [] runt din kod så hamnar din kod i en sån här fin ruta.

...din kod...

Och för att svara på vad jag tror är din fråga så får du ju lägga till det rätta id:t i din sql
såhär ser en uppdatering jag använder mig av ut:

"Update t_nyhet Set nyhet='" & strNyhet & "' Where id = "& SafeSQL(clng(request.querystring("id")

Hoppas det kan hjälpa dig på vägen.

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