【发布时间】:2014-04-30 03:14:23
【问题描述】:
所以我的表单将数据发送到我的 php 文件,然后将其输入数据库。这是php后端部分
<?php
$db = new mysqli('localhost','root','x','app');
$username = $_POST['username'];
$db->query("INSERT INTO people (first_name) VALUES ('{$username}'");
?>
但我的问题是,为什么不将username 放入数据库中?
【问题讨论】:
-
您应该回显
$username值以进行调试。此外,您的查询允许$_POST值直接插入数据库,这可能会导致 SQL 注入。 -
使用
mysqli_real_escape_string()来避免SQL注入。 -
您在
("INSERT INTO people (first_name) VALUES ('{$username}'")中缺少一个括号)更改为:("INSERT INTO people (first_name) VALUES ('{$username}')") -
那行得通。发布我猜的答案? @Fred-ii-
-
那会解决所有的注射问题吗? @努努