0
<?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 功能有关。有什么想法。谢谢,马特

4

2 回答 2

0

用于var_dump($_POST)调试问题。可能是您在网络表单中输入字段的名称与您使用的索引不匹配$_POST。还要确保您的网络表单未POST使用GET

于 2013-05-24T17:17:32.317 回答
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 那里有你所有发送的变量

于 2013-05-24T17:23:04.187 回答