2013-10-08 72 views
0

我正在創建一個網頁,用戶可以從數據庫中刪除信息,並從數據庫中收到一條錯誤消息,說明這一點。我該如何解決這個ASP錯誤「80040e14」?

Microsoft Jet數據庫引擎錯誤 '80040E14'

語法錯誤(缺少操作者)在查詢表達式ID ='。

/courses/benv/2410/2013s2/3420384/assign3/delete.asp 50行

我相信這是因爲本來應該由形式通過,但缺少值。但是,我看不到我失蹤的地方。

以下是網頁代碼。 50號線是在階段2

<% option explicit %> 
<html> 
<head> 
</head> 
<body> 
    <!--#include file="dbconn.asp"--> 
    <!--#include file="header.asp"--> 
    <% 
    dim stage, s, sql, info 
    stage = request.form("stage") 
    if stage = "" then stage=1 

    '------------------------------------------------------------------ 
    if stage = 1 then 
    '------------------------------------------------------------------ 

    '--- get all the posts 
    '   0  1    2   3 
    SQL="SELECT ID, projectName, description, Created"&_ 
    " FROM ProjectsTable"&_ 
    " ORDER BY ID" 
    set info=conn.execute(SQL) 

    '--- create a radio-button list of the current posts 
    response.write "<br>" &_ 
    "Please select the post to be deleted:" &_ 
    "<form action=""delete.asp"" method=""post"">" &_ 
    "<input type=""hidden"" name=""stage"" value=""2"">" 
    do 
    response.write "<input type=""radio"" name=""posttobedeleted" &_ 
    " value="""&info(0)&""">"&info(1) &_ 
    " "&info(2)&" "& info(3) & "<br>" 
    info.movenext 
    loop until info.eof 
    response.write "<input type=""submit"" value=""Delete Post!"">" &_ 
    "</form>" 

    '------------------------------------------------------------------ 
    elseif stage = 2 then 
    '------------------------------------------------------------------ 

    %> 
<!-- #include virtual="/courses/benv/2410/show_form_content.asp"--> 

<% 

    dim deletePost 
    deletePost = Request.Form("posttobedeleted") 
    sql = "delete * from ProjectsTable where ID="& deletePost 
    conn.execute(sql) 

    response.write "The specified suburb has been deleted." 

    '------------------------------------------------------------------ 
    end if ' stage 
    '------------------------------------------------------------------ 

    response.write "<br clear=""left"">" &_ 
    "<br>" 
    if stage=2 then 
    response.write "<i>that's all folks!</i><br>" 
    end if 
    response.write "<a href=""./"">back to main page</a>" 
    conn.close 
    %> 
</body> 
</html> 
+0

你是否在點擊'Delete Post!'之前選擇了任何單選按鈕? – cha

+0

@cha yes。目前我只有一個,因爲我只是在測試。 – chap

+0

@cha只是嘗試添加另一個單選按鈕。同樣的信息。 – chap

回答

3

我認爲這個問題是這一行:

response.write "<input type=""radio"" name=""posttobedeleted" &_ 
    " value="""&info(0)&""">"&info(1) &_ 
    " "&info(2)&" "& info(3) & "<br>" 

嘗試將其更改爲:

response.write "<input type=""radio"" name=""posttobedeleted"" value=""" &_ 
info(0) & """>" &_ 
info(1) &_ 
" " & info(2) & " " & info(3) & "<br>" 

說明:我想通過分離「 「你打破了對radiobuttons的正確初始化。我建議你在Firefox中安裝一個FireBug或者其他東西,併爲你的單選按鈕「檢查元素」

+1

+1。具體來說,問題出在'&_「' - 它是關閉單選按鈕名稱的''',因此無法'請求'它的值。你的解決方案應該可以工作,或者OP可以在換行符後面添加2個額外的''' – user2480596

+0

謝謝!那真是個竅門,我會爲你投票,但是我的名聲還不夠高,非常感謝你的幫助。 – chap

相關問題