/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Enkelt database-script laver intern server~
Fra : Christian


Dato : 01-12-04 21:27

Hej
Jeg har følgende script, der skal bruges til at hente brugerens
email og lægge den ind i en database. Ganske simpelt. Men hver
gang jeg prøver, får jeg følgende fejl:

HTTP 500 - Intern serverfejl

Hvad kan det skyldes?


<%
dim cn, strsql

Set Cn = Server.CreateObject("ADODB.Connection")
cn.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" &
server.mappath(".") & "\emailbase.mdb"

strsql = "INSERT INTO email_venteliste VALUES ('" &
Request.Form("email") & "')"

cn.execute(strsql)

cn.close
set cn=nothing

response.redirect "interesseliste_tak.asp"

%>


formen jeg modtager emailadressen fra:

   
<form name="Gaestebog" action="emaildb.asp" method="post">
<input type="text" name="email" value="Skriv din emailadresse
her">
<input type="submit" value="Send">
</form>

/Christian


--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

 
 
Christopher Larsen (01-12-2004)
Kommentar
Fra : Christopher Larsen


Dato : 01-12-04 21:54


Nu med fejlmeddelelse:

Microsoft JET Database Engine error '80004005'

Number of query values and destination fields are not the same.

/emaildb.asp, line 19

Jeg synes ikke det hjælper mig videre.

/Christian

Christian wrote in dk.edb.internet.webdesign.serverside.asp:
> Hej
> Jeg har følgende script, der skal bruges til at hente brugerens
> email og lægge den ind i en database. Ganske simpelt. Men hver
> gang jeg prøver, får jeg følgende fejl:
>
> HTTP 500 - Intern serverfejl
>
> Hvad kan det skyldes?
>
>
> <%
&gt; dim cn, strsql
&gt;
&gt; Set Cn = Server.CreateObject("ADODB.Connection")
&gt; cn.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" &
&gt; server.mappath(".") & "\emailbase.mdb"
&gt;
&gt; strsql = "INSERT INTO email_venteliste VALUES ('" &
&gt; Request.Form("email") & "')"
&gt;
&gt; cn.execute(strsql)
&gt;
&gt; cn.close
&gt; set cn=nothing
&gt;
&gt; response.redirect "interesseliste_tak.asp"
&gt;
&gt; %>
>
>
> formen jeg modtager emailadressen fra:
>
>    
> <form name="Gaestebog" action="emaildb.asp" method="post">
> <input type="text" name="email" value="Skriv din emailadresse
> her">
> <input type="submit" value="Send">
> </form>
>
> /Christian
>
>
> --
> Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
> - Pædagogiske tutorials på dansk
> - Kom godt i gang med koderne
> KLIK HER! => http://www.html.dk/tutorials


--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

terje (01-12-2004)
Kommentar
Fra : terje


Dato : 01-12-04 23:51

Christopher Larsen wrote:
> Nu med fejlmeddelelse:
>
> Microsoft JET Database Engine error '80004005'
>
> Number of query values and destination fields are not the same.
>
> /emaildb.asp, line 19

Denne feilmeldingen er jo faktisk ganske klar. Den sier at det ikke er
samsvar mellom antall tabell felter i din SQL streng og hva som faktisk
finnes i databasen. Hvis du åpner din database og sammenligner grundig
både antallet felt og feltenes navn, finner du da noe overraskende?

terje

Jens Gyldenkærne Cla~ (02-12-2004)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 02-12-04 00:13

Christopher Larsen skrev:

> Nu med fejlmeddelelse:

Takker.

> Microsoft JET Database Engine error '80004005'
>
> Number of query values and destination fields are not the same.
>
> /emaildb.asp, line 19
>
> Jeg synes ikke det hjælper mig videre.


"query values" er de data du definerer i din INSERT-sætning.
"destination fields" er de felter du angiver som modtagere til dine
data. Hvis er ikke er samme antal definerede data-felter og
modtagerfelter, så skal forespørgslen fejle.

Eksempler:

INSERT INTO tabel (felt1, felt2) VALUES (34, 23)

- "query values" er 34 og 23
- "destination fields" er felt1 og felt2

INSERT INTO tabel (mail) SELECT email FROM tabel2

- "query values" er email
- "destination fields" er mail


Du skriver blot:

INSERT INTO email_venteliste VALUES ([et formrequest])

Det er generelt en dårlig ide - for det er svært at overskue hvis
tabellen har flere kolonner. Når det går galt her, er det med stor
sandsynlighed fordi din tabel har mere end ét felt. Angiv derfor
altid navnene på de felter du vil indsætte data i.

Et par generelle råd:
- Kig gerne på din citatteknik. Du kan se min signatur eller
nederst på siden her: <http://html.dk/nyhedsgrupper/usenet.asp>
- Det er godt at komme med en fejlmeddelelse, men det bliver endnu
bedre hvis du også kan vise den kodelinje der fejler (altså her
linje 19). På gruppens faq-side kan man finde følgende artikel der
er god at starte med: <http://asp-faq.dk/article/?id=41>.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Søg
Reklame
Statistik
Spørgsmål : 177559
Tips : 31968
Nyheder : 719565
Indlæg : 6408938
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste