html表单更新mysql数据库

时间:2012-03-07 20:21:01

标签: mysql html database forms jsp

我已经创建了一个下面显示的html文档,但是我遇到了mysql编码的麻烦,使表单中的值更新了我的mysql数据库。有人可以帮我解决这个问题吗?

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>JSP Page</title>
    </head>    <body>
        <h1>Hello World!</h1>

        <h1>Submit your notices below:</h1>

        <form name="messages" action="teacher1messages.jsp" method="POST"         enctype="multipart/form-data">
        <h1>Username:</h1>
        <input type="text" name="username" value="eg.cs09kkk1" />
            <h1>Date of notice:</h1>
            <input type="text" name="date" value="dd/mm/yy" />
            <h1>Notice:</h1>
            <textarea name="message1" rows="4" cols="20">
[Type your notices here]
            </textarea>
            <input type="submit" value="submit" name="submit" />
            <h1>Acknowledgment:</h1>
            <input type="text" name="acknowledgment" value="" />
        </form>


    </body>
</html>

这是我尝试过的sql update编码,但它只是将我数据库中的表更新为null null,而不是用户输入值

--%><sql:update var="messages" dataSource="jdbc/noticeboard">
    INSERT INTO messages (username, postedon, message, acknowledgment)
VALUES ('$_POST[username]','$_POST[date]','$_POST[message1]','$_POST[acknowledgment]')
</sql:update>

3 个答案:

答案 0 :(得分:0)

从未使用过jsp这可能是错误的,但语法不正确:

$_POST['username']

'$_POST[username]'

所以你的代码变成了:

<sql:update var="messages" dataSource="jdbc/noticeboard">
    INSERT INTO messages (username, postedon, message, acknowledgment) VALUES ($_POST['username'],$_POST['date'],$_POST['message1'],$_POST['acknowledgment'])
</sql:update>

答案 1 :(得分:0)

JSP中没有$_POST,可能是PHP。试试ServletRequest的{​​{3}}。

答案 2 :(得分:0)

那些$_POST[parameterName]适用于PHP。 你在这里搞乱PHP和JSP。您的查询应该是:

<sql:update var="messages" dataSource="jdbc/noticeboard">
    INSERT INTO messages (username, postedon, message, acknowledgment)
        VALUES ('<%=request.getParameter("username")%>',
                '<%=request.getParameter("date")%>',
                '<%=request.getParameter("message1")%>',
                '<%=request.getParameter("acknowledgment")%>')
</sql:update>
JSP中使用

<%=request.getParameter("parameterName")%>来打印parameterName参数的值。