<?php
$name = $_POST['usrname'];
$review = $_POST['usrcomment'];
$con = mysqli_connect("host","user","password","db");
if (mysqli_connect_errno()){
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
else {
$sql="INSERT INTO Feedback (ClientName, ClientComment) VALUES('$name','$review')";
mysqli_query($con,$sql);
}
if (!mysqli_query($con,$sql)){
die('Error: ' . mysqli_error($con));
}
mysqli_close($con);
?>
以下是错误声明:注意:未定义的索引:usrname。
我正在尝试将Web表单连接到数据库。我收到了我的Web表单的文本字段的未定义索引的错误。我使用带有$ _POST函数的SQL插入语句将数据从Web表单插入到数据库中。我从语句中删除了post函数,并放入了一些真实的数据。该声明起作用并将信息放入数据库。似乎错误与post函数有关。有任何想法。 谢谢, 马特
答案 0 :(得分:0)
使用var_dump($_POST)
调试问题。有可能是webform中输入字段的名称与您使用$_POST
时使用的索引不匹配。另外,请确保您的网络表单使用POST
而不是GET
答案 1 :(得分:0)
我们可以采取一些措施来解决这个问题。
1.确保action =
正在寻找正确的php文件
2.将您尝试使用的元素的name
属性复制到$_POST['']
的关键区域,这样如果您有<input type = "text" name = "user">
,您的变量将显示为$user = $_POST['user'];
}
3. print_r
数组。每个php程序员应该具备的一个功能是
function printarray($printarray){
echo '<pre>';
print_r($printarray);
echo '</pre>';
}
然后每次你需要打印全局变量时使用:
printarray($_REQUEST);
和BAM theres你发送的所有变量