GET参数为null,即使我传递了一个值。

11 浏览
0 Comments

GET参数为null,即使我传递了一个值。

如何让以下代码生效?\n

String d=request.getParameter("bday");

\nGET参数的值为空,但我在这里存储了HTML日期选择器的值,尽管我传递了一个值。\n

Extra_User.jsp


生日 Extra_User_Data.jsp <%@page import="java.sql.*"%> <% try { String d=request.getParameter("bday"); Connection cn; Statement st; Class.forName("com.mysql.jdbc.Driver"); cn=DriverManager.getConnection("jdbc:mysql://localhost:3306/main","root",""); st=cn.createStatement(); st.executeUpdate("INSERT INTO newuser(dob)VALUES('"+d+"')"); out.println("插入成功"); } catch(SQLException sq) { out.println(sq.toString()); } %>

\n我将一些日期从HTML表单传递给另一个.jsp文件,但在向数据库添加数据时,它显示为空值。\n它显示错误,如下所示...\n

\ncom.mysql.jdbc.MysqlDataTruncation: 数据截断:列\'dob\'的日期值不正确:在第1行的\'null\'\n

0
0 Comments

使用name而不是id来输入您的参数。谢谢...它起作用了...!

很好的发现!记住,值得回答的问题也值得点赞。(这个问题实际上是一个重复的问题,但它仍然是某人搜索并找到“规范问题”的好方法)。

当我们发送HTTP请求时,可以在URL中包含参数。这些参数可以是GET参数,也可以是POST参数。在本文中,我们将讨论一个问题:尽管我传递了值,但GET参数为null。

解决这个问题的方法是使用name而不是id来输入参数。这意味着我们需要在HTML中使用name属性而不是id属性。

以下是一个示例:

HTML代码:

在这个示例中,我们在输入字段上使用name属性而不是id属性。当用户提交表单时,将发送一个GET请求到example.php,并且将包含一个名为"name"的参数。

在example.php中,我们可以使用$_GET变量来访问这个参数的值。例如,我们可以使用以下代码来获取传递的参数的值并进行处理:

PHP代码:

$name = $_GET['name'];
echo "Hello, " . $name;

通过这种方式,我们可以确保我们能够正确地获取到传递的GET参数的值。

总结起来,当我们遇到GET参数为null的问题时,我们应该检查我们的HTML代码并确保我们在输入字段上使用name属性而不是id属性。这样,我们就能够正确地传递和获取GET参数的值了。

0