mysql连接怎么办?

yrdbyhpb  于 2021-06-20  发布在  Mysql
关注(0)|答案(1)|浏览(272)

我对php真的很陌生,我正在尝试从表单中简单地插入mysql数据库。
我知道这个mysql连接/插入是危险的,不再使用了。有人能帮我解决这个简单的问题吗?我试着用谷歌搜索,但到目前为止没有任何效果:/

<? 
$text=$_POST['name']; 
$text=$_POST['surename'];

mysql_connect("localhost", "db_name", "pass") or die(mysql_error()); 
mysql_select_db("db_name") or die(mysql_error()); 
$result = mysql_query("INSERT INTO `table` (name, surename)
VALUES (NOW(), '".mysql_real_escape_string($name)."', '".mysql_real_escape_string($surename)."')");
if (!$result) {
    die('Invalid query: ' . mysql_error());     
}
?>
svmlkihl

svmlkihl1#

也许会改变

$text=$_POST['name']; 
$text=$_POST['surename'];

$name = $_POST['name']; 
$surename = $_POST['surename'];

ps:而且列名与值不匹配。您的查询,在插入参数之后

"INSERT INTO `table` (name, surename) VALUES (NOW(), '".mysql_real_escape_string($name)."', '".mysql_real_escape_string($surename)."')"

可能是这样的

INSERT INTO `table` (name, surename) VALUES (NOW(), 'Jhon', 'Wick')

正如你所看到的 name, surename (可能应该是 surname )以及 (NOW(), 'Jhon', 'Wick') . 因此,要么添加一列(如果数据库中有该列):

INSERT INTO `table` (created_at, name, surename) VALUES (NOW(), 'Jhon', 'Wick')

或删除 NOW() 从你的价值观

INSERT INTO `table` (name, surename) VALUES ('Jhon', 'Wick')

相关问题