我目前遇到一些问题。
基本上,我使用PDO,我想创建一个表,并在表中插入一些内容。
我试着寻找解决方案,但似乎什么都不起作用。
请看一下:
public function install()
{
global $con;
$sql = "CREATE TABLE if not exists users
(id INT(11) PRIMARY_KEY,
uname VARCHAR(30) ,
pass VARCHAR (40))";
$sq = $con->query($sql);
if ($sq)
{
echo "Table successfully created!";
}
else
{
$this->errors[] = 'Error creating table: users';
}
$sql_code = "INSERT INTO users (
`uname`,
`pass` ) VALUES(
`$this->username`,
`$this->password`
)";
$sq1 = $con->query($sql_code);
if ($sql_code)
{
echo "Successfull!";
}
else
{
echo "Error creating admin user!";
}
}
注意:数据库连接是在另一个名为config.php
的文件中设置的,我还在代码中包含了config.php
文件。
好吧,可能会有很多事情同时发生。
也许您的数据库连接失败了(我建议通过引用函数install
而不是使用global
关键字来传递连接$con
)。
也许您没有足够的权限在数据库中创建表。
此外,你没有绑定你的参数,这将是正确的方法:
$sql_code = "
INSERT INTO users (
uname,
pass
)
VALUES (
:userName,
:password
);
";
$sq1 = $con->prepare($sql_code);
$sq1->bindParam(':userName', $userName);
$sq1->bindParam(':password', $password);
$sq1->query($sql_code);