这个问题在这里已经有答案了:
引用-这个错误在php中是什么意思(36个答案)
两年前关门了。
我为用户名和短信创建了一个表单,但是现在按submit实际上并没有提交任何东西,尽管它与我的登录和注册表单的代码很接近。代码:
<form id="myChatForm">
<input type= "text" placeholder= "Enter a name" name= "user_name" id= "user_name"><br>
<textarea placeholder= "type your message" name="message" id="message" cols="30" rows="3"></textarea><br>
<button type= "submit" name= "submit" value= "submit" class= "btn btn-succes btn-lg" id = "sendMessageBtn"> Send Message</button><br>
</form>
<?php
include("config.php");
if (isset($_POST['user_name']) && isset($_POST['message'])){
if (isset($_POST['user_name'])) {
$uname = ($_POST['user_name']);
}
if (isset($_POST['message'])) {
$umessage = ($_POST['message']);
}
$query = "INSERT INTO chatroom (name, message) VALUES ('$uname', '$umessage')";
$run = mysqli_query($con, $query);
}
?>
因为据我所知,问题在于形式
if (isset($_POST['user_name']) && isset($_POST['message'])){
我会得到错误,说用户名和消息都是未定义的。
4条答案
按热度按时间ia2d9nvy1#
默认情况下,窗体的方法是get。您可以使用$\u get访问域,也可以将窗体的方法更改为post
ctrmrzij2#
尝试将窗体“method”设置为post,并将“action”设置为希望窗体将值发布到的位置。
1l5u6lss3#
似乎您对html表单的工作方式有误解。
包含表单的网页和获取表单输入并对其执行操作的网页不是同一页/文件。表单网页通过使用
action
属性。您可以将它们放在同一个html文件中,但我建议您先了解html表单如何与经典的“两个单独的文件”设计一起工作,然后再进一步使事情复杂化。
z31licg04#
向窗体中添加方法
method="post"
,在中搜索变量$_POST[""]
,但默认情况下发送-GET
,所以写下: