Avatar billede ponyboye Nybegynder
18. august 2004 - 09:58 Der er 14 kommentarer og
1 løsning

Vil ikke indsætte i tabel?

jeg forstå det ikke. Jeg syntes at have fået det vist og burde kunne lave det nu, men ark nej.

Når jeg vil indsætte i tabellen kommer den med denne fejl:

Syntax error in INSERT INTO statement.

Koden ser sådanne ud:

<%
OpenDatabase

strSQL = "insert into keywords (kw_word, kw_anvendelse, kw_type, kw_beskrivelse, kw_smag, kw_historie, kw_kendetegn, kw_dyrkning, kw_kvalitet, kw_sorter, kw_sason)"
strSQL = strSQL & " values ("
strSQL = strSQL & "'" & Request.Form("kw_word") & "', "
strSQL = strSQL & "'" & Request.Form("kw_anvendelse") & "', "
strSQL = strSQL & "'" & Request.Form("kw_type") & "', "
strSQL = strSQL & "'" & Request.Form("kw_beskrivelse") & "', "
strSQL = strSQL & "'" & Request.Form("kw_smag") & "', "
strSQL = strSQL & "'" & Request.Form("kw_historie") & "', "
strSQL = strSQL & "'" & Request.Form("kw_kendetegn") & "', "
strSQL = strSQL & "'" & Request.Form("kw_dyrkning") & "', "
strSQL = strSQL & "'" & Request.Form("kw_kvalitet") & "', "
strSQL = strSQL & "'" & Request.Form("kw_sorter") & "', "
strSQL = strSQL & "'" & Request.Form("kw_sason") & "', "
strSQL = strSQL & ")"
Conn.Execute(strSQL)
CloseDatabase
%>

Min form ser sådanne ud:

<form action="keywordsindsat.asp" method="post">
                                  <center>
                                   
    <div align="center">
      <table width="550" cellpadding="2" cellspacing="3" bgcolor="#CCCCCC" class="formadmin">
        <tr>
          <td width="250"><div align="center">Varenavn:<br>
              <input name="kw_word" type="text" id="kw_word">
            </div></td>
          <td width="250"><div align="center">Varetype:<br>
              <input name="kw_type" type="text" id="kw_type">
            </div></td>
        </tr>
        <tr>
          <td><div align="center">Beskrivelse :<br>
              <textarea name="kw_beskrivelse" id="kw_beskrivelse"></textarea>
            </div></td>
          <td><div align="center">Varens smag:<br>
              <textarea name="kw_smag" id="kw_smag"></textarea>
            </div></td>
        </tr>
        <tr>
          <td><div align="center">Anvendelse:<br>
              <textarea name="kw_anvendelse" id="kw_anvendelse"></textarea>
            </div></td>
          <td><div align="center">Varens historie:<br>
              <textarea name="kw_historie" id="kw_historie"></textarea>
            </div></td>
        </tr>
        <tr>
          <td height="21"><div align="center">Varens kendetegn:<br>
              <textarea name="kw_kendetegn" id="kw_kendetegn"></textarea>
            </div></td>
          <td height="21"><div align="center">Dyrkning:<br>
              <textarea name="kw_dyrkning" id="kw_dyrkning"></textarea>
            </div></td>
        </tr>
        <tr>
          <td height="21"><div align="center">Kvalitets tegn:<br>
              <textarea name="kw_kvalitet" id="kw_kvalitet"></textarea>
            </div></td>
          <td height="21"><div align="center">Sorter:<br>
              <textarea name="kw_sorter" id="kw_sorter"></textarea>
            </div></td>
        </tr>
        <tr>
          <td height="21"><div align="center">Sæson:&nbsp;
              <input name="kw_sason" type="text" id="kw_sason">
            </div></td>
          <td height="21">&nbsp;</td>
        </tr>
        <tr>
          <td height="21" colspan="2">&nbsp;</td>
        </tr>
        <tr>
          <td height="16" colspan="2"><div align="center"><font face="Verdana, Arial, Helvetica, sans-serif"><b>
              <input type="Submit" value="Tilf&oslash;j" name="Submit">
              <input type="Reset" value="Slet" name="Reset">
              </b></font></div>
            <div align="center"></div></td>
        </tr>
        <tr>
          <td width="250"><div align="center"></div></td>
          <td width="250"><div align="center"></div></td>
        </tr>
      </table>
      </div>
  </center>
</form>

Vil meget gerne have en forklaring på hvad jeg har gjort forkert.
Det skulle jo ikke ske IGEN
Avatar billede fennec Nybegynder
18. august 2004 - 10:03 #1
du bruger ikke ' tegnet i nogat af den tekst som skal indsættes. For det skal skiftes ud med to.
Avatar billede anhansen Nybegynder
18. august 2004 - 10:11 #2
du slutter med et ,
Altså dit statement ser sådan ud:
Insert into statement (...) values (..., .. ,)
Slet det sidste komma og så skulle den køre.
Avatar billede anhansen Nybegynder
18. august 2004 - 10:34 #3
hjalp det?
Avatar billede ponyboye Nybegynder
18. august 2004 - 10:47 #4
tester lige.

anhansen: hvad er det for et komma du snakker om?
Avatar billede anhansen Nybegynder
18. august 2004 - 10:49 #5
strSQL = strSQL & "'" & Request.Form("kw_sason") & "', "
efter & i denne linje...
Avatar billede ponyboye Nybegynder
18. august 2004 - 10:56 #6
strSQL = "insert into keywords (kw_word, kw_anvendelse, kw_type, kw_beskrivelse, kw_smag, kw_historie, kw_kendetegn, kw_dyrkning, kw_kvalitet, kw_sorter, kw_sason)"
strSQL = strSQL & " values ("
strSQL = strSQL & "" & Request.Form("kw_word") & " "
strSQL = strSQL & "" & Request.Form("kw_anvendelse") & " "
strSQL = strSQL & "" & Request.Form("kw_type") & " "
strSQL = strSQL & "" & Request.Form("kw_beskrivelse") & " "
strSQL = strSQL & "" & Request.Form("kw_smag") & " "
strSQL = strSQL & "" & Request.Form("kw_historie") & " "
strSQL = strSQL & "" & Request.Form("kw_kendetegn") & " "
strSQL = strSQL & "" & Request.Form("kw_dyrkning") & " "
strSQL = strSQL & "" & Request.Form("kw_kvalitet") & " "
strSQL = strSQL & "" & Request.Form("kw_sorter") & " "
strSQL = strSQL & "" & Request.Form("kw_sason") & " "
strSQL = strSQL & ")"
Conn.Execute(strSQL)

så siger den at:

Syntax error (missing operator) in query expression
Avatar billede fennec Nybegynder
18. august 2004 - 11:09 #7
Det var rigtigt nok før, bortset fra den ene linje, som anhansen skrev i sin post "18/08-2004 10:49:02". Der skal du bare fjerne det ene komma.

Hvis du bruger ' tegnet i dine formfelter, vil du også få fejl. Du burde derfor lave en udskiftning af ' tegn, med to på alle dine Request.Form.

f.eks replace(Request.Form("kw_beskrivelse"),"'","''")
Avatar billede ponyboye Nybegynder
18. august 2004 - 11:15 #8
øhh det forstår jeg ikke lige fennec
Avatar billede fennec Nybegynder
18. august 2004 - 11:18 #9
strSQL = "insert into keywords (kw_word, kw_anvendelse, kw_type, kw_beskrivelse, kw_smag, kw_historie, kw_kendetegn, kw_dyrkning, kw_kvalitet, kw_sorter, kw_sason)"
strSQL = strSQL & " values ("
strSQL = strSQL & "'" & Request.Form("kw_word") & "', "
strSQL = strSQL & "'" & Request.Form("kw_anvendelse") & "', "
strSQL = strSQL & "'" & Request.Form("kw_type") & "', "
strSQL = strSQL & "'" & Request.Form("kw_beskrivelse") & "', "
strSQL = strSQL & "'" & Request.Form("kw_smag") & "', "
strSQL = strSQL & "'" & Request.Form("kw_historie") & "', "
strSQL = strSQL & "'" & Request.Form("kw_kendetegn") & "', "
strSQL = strSQL & "'" & Request.Form("kw_dyrkning") & "', "
strSQL = strSQL & "'" & Request.Form("kw_kvalitet") & "', "
strSQL = strSQL & "'" & Request.Form("kw_sorter") & "', "
strSQL = strSQL & "'" & Request.Form("kw_sason") & "' " <--- Dette komma er fjernet
strSQL = strSQL & ")"
Avatar billede anhansen Nybegynder
18. august 2004 - 11:24 #10
Når du skriver sql'en sådan som du gør - hvis du så indtaster i et felt værdien "peter's" f.eks, så vil 'en komme til at afbryde din streng i sql'en og du vil få en fejl - derfor skal de oversættes til noget andet.
Avatar billede ponyboye Nybegynder
18. august 2004 - 11:38 #11
fennec og anhansen det virker nu og jeg siger tak.

nu skal jeg også have et billeder upload. kender i et upload script til aspsmartupload der er let at håndter?

Det den skal kunne er at indsætte stien til billedet i databasen og lægge billedet i en mappe.
Avatar billede anhansen Nybegynder
18. august 2004 - 13:06 #12
Desværre... har ikke lavet så meget i alm. asp.. :-(
Avatar billede anhansen Nybegynder
19. august 2004 - 21:56 #13
skal den lukkes?
Avatar billede ponyboye Nybegynder
19. august 2004 - 23:57 #14
ja da det skal den og tak for den dejlige hjælp
Avatar billede anhansen Nybegynder
20. august 2004 - 14:33 #15
Det var så lidt.. Det er jo det vi er her for... :-)
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