我目前遇到了一些问题。
基本上,我使用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
文件。
答案 0 :(得分:0)
嗯,可能会有很多事情发生,也许是在同一时间。
也许你的数据库连接失败了(我建议通过引用函数$con
来传递连接install
,而不是使用global
keyword)。
可能您没有足够的权限在数据库中创建表。
此外,您没有绑定参数,这是正确的方法:
$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);