您好我是mysql的新手,我试图使用INSERT将一些数据插入数据库,从HTML表单接收数据
插入数据
$q = "INSERT INTO 'customers'('firstname', 'lastname', 'email') VALUES ('$first, '$last', '$email')";
mysqli_query($dbc, $q);
这就是INSERT功能
选择数据
$q = 'SELECT * FROM customers';
$r = mysqli_query($dbc, $q)
OR die
(mysqli_error());
echo 'customers';
while($row = mysqli_fetch_array ($r, MYSQL_ASSOC))
{
echo '<br />' .$row['firstname']. $row['lastname']. $row['email'];
}
这是SELECT函数以及我如何在php页面上显示数据库
无论我看到什么教程或论坛,我似乎无法解决为什么我无法添加或显示结果!?
答案 0 :(得分:3)
不要使用引号来转义列名或表名,而是使用反引号。引号是字符串分隔符。
INSERT INTO `customers`(`firstname`, `lastname`, `email`)
VALUES ('$first', '$last', '$email')
你应该考虑使用 Prepared Statements 预先安排SQL注入。但你绝对必须逃避用户输入。否则,您的输入也会产生语法错误。
正如另一个答案所指出的那样 - 你的第一个参数也确实错过了一个引用。
答案 1 :(得分:1)
试试这个......你有错误引用 $ first 的问题
$q = "INSERT INTO customers(firstname, lastname, email) VALUES ('$first', '$last', '$email')";
mysqli_query($q);
<强> EDITED 强>
答案 2 :(得分:1)
通过包含列和表名引号,您可以在字符串中指定它们。使用以下代码
$q = "INSERT INTO customers(firstname, lastname, email)
VALUES ('$first', '$last', '$email')";
mysqli_query($dbc, $q);
希望这有助于你