gpt4 book ai didi

php - PDO 形式仅添加主键

转载 作者:行者123 更新时间:2023-11-29 21:28:56 26 4
gpt4 key购买 nike

我有一个名为流派的表,它是音乐数据库的表。该表包含两列:genre_id 和genre_name。 Genre_id 为主键,设置为自增。我创建了一个表单来添加流派,如下所示:

<?php
if ( empty( $_POST ) ) {
?>
<form name="newaddgenre" action="newaddgenre.php" method="POST">
<label for 'genre'>Genre: </label>
<input type="text" name="genre_name"/>
<br/>
<button type="button" class="btn btn-primary">Submit</button>
</form>
<?php
} else {
$user = 'root';
$pass = 'mysql';
$db = new PDO ('mysql:host=localhost;dbname=musicdb', $user, $pass);
$form = $_POST;
$genre_name = $form[ 'genre_name' ];
$sql = "INSERT INTO genre (genre_name)
VALUES (genre_name)";
$query = $db->prepare( $sql );
$query->execute( array( ':genre_name'=>$genre_name) );
print_r( $_POST );
}
?>

当我在浏览器中打开它时,会出现表单,我可以添加流派,但是当我从流派中选择 * 时,唯一创建的就是流派_id。表中没有genre_name。我究竟做错了什么?

免责声明:这是一项家庭作业,我对 PHP 没有太多经验,所以如果这段代码有明显的错误,请原谅我。

最佳答案

:genre_name 在您的 SQL 语句中没有定义。尝试像这样点亮:

$sql = "INSERT INTO genre (genre_name)
VALUES (:genre_name)";
$query = $db->prepare( $sql );
$query->execute( array( ':genre_name'=>$genre_name) );

关于php - PDO 形式仅添加主键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35385620/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com