当试图从表单中获取数据并将其添加到名为test的数据库内的称为对象的表时,我遇到了一个小问题。尝试通过表单插入数据库时出错。 SQLSTATE [42S22]
当我打开窗体上添加一些信息,然后按提交,我得到这个错误:
Fatal error: Uncaught PDOException: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'Mr' in 'field list' in *path**
的HTML和PHP代码都在同一目录下,两个单独的文件。
page_1.php
<form action="connect.php" method="post">
Title: <input type="text" name="title"><br />
First name: <input type="text" name="fname"><br />
About: <textarea name="about"></textarea><br />
<input type="reset" name="reset">
<input type="submit" name="submit" value="OK">
</form>
connect.php
try{
$dh = new PDO('mysql:host=127.0.0.1;dbname=test','root','');
$dh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
}catch(PDOException $e){
echo $e->getMessage();
die();
}
$title = $_POST['title'];
$content = $_POST['about'];
$name = $_POST['fname'];
$sql = "INSERT INTO objects (post_title, post_content, post_name, post_date)
VALUES ({$title}, {$content}, {$name})";
$query = $dh->query($sql);
while($r = $query->fetch(PDO::FETCH_OBJ)){
echo $r->post_name, '<br>';
}
你刚刚错过了添加日期 –
'post_date'是否有'CURDATE()'的默认约束?如果是这样,从'INSERT INTO'中删除'post_date' – Arulkumar