gpt4 book ai didi

html - 无法使用 SQLi 连接方法将数据插入 SQL

转载 作者:行者123 更新时间:2023-11-29 12:38:22 25 4
gpt4 key购买 nike

我使用 SQLi 连接方法连接到本地主机中的 SQL 数据库,以下是我将数据插入 SQL DB 的代码

SQL 表

create table `test`(
`id` int(4) NOT NULL auto_increment,
`first` varchar(255) NOT NULL default '',
`last` varchar(255) NOT NULL default '',
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=1 ;

表单处理

<?php
$db_username="sanoj";
$db_password="123456";
try {
#connection
$conn = new PDO('mysql:host=localhost;dbname=localtest', $db_username, $db_password);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

$data = $conn->prepare('INSERT INTO test VALUES(:first)');
$data->bindParam(':first', $first);

$first = 'Huzoor Bux';
$data->execute();

#exception handiling
} catch(PDOException $e) {
echo $e->getMessage();
}
?>

表单

<FORM method="post" action="for.php">
<input type="text" name="first" placeholder="first"><br>
<input type="text" name="last" placeholder="last">
<input type="submit">
</FORM>

错误

SQLSTATE[21S01]: Insert value list does not match column list: 1136 Column count doesn't match value count at row 1

最佳答案

试试这个:

#connection 
$conn = new PDO('mysql:host=localhost;dbname=localtest', $db_username, $db_password);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

$data = $conn->prepare('INSERT INTO test (first, last) VALUES (:first, :last)');
$first = 'Huzoor Bux';
$last = 'Bux Huz';
$data->execute(array(':first' => $first, ':last' => $last));

#exception handiling

请注意,您正在使用正确的 PDO。 Using mysql_connect() is deprecated .

关于html - 无法使用 SQLi 连接方法将数据插入 SQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26437356/

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