php中未将数据插入mysql数据库
数据库连接,但不将数据插入表 数据库名称学校 表格名称表格 通过使用此insert查询php中未将数据插入mysql数据库,php,mysql,Php,Mysql,数据库连接,但不将数据插入表 数据库名称学校 表格名称表格 通过使用此insert查询$sql=“insert into form(name,gender)Values('jany','female')”,数据成功插入mysql sql控制台 也不显示数据 <?php $con=mysqli_connect("localhost","root","","school"); if(mysqli_connect_errno()){ echo "failed".mysqli_conne
$sql=“insert into form(name,gender)Values('jany','female')”,数据成功插入mysql sql控制台代码>
也不显示数据
<?php
$con=mysqli_connect("localhost","root","","school");
if(mysqli_connect_errno()){
echo "failed".mysqli_connect_error();
}
if(isset($_POST['submit'])){
$name=$_POST['name'];
$gender=$_POST['gender'];
$sql="insert into form(name,gender) Values('".$name."','".$gender."')";
if(!mysqli_query($con,$sql)){
die('error'.mysqli_error($con));
}
else echo "data added";
}
mysqli_close($con);
?>
<html><head></head>
<body>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="">
Name : <input type=text name=name ><br>
Last Name : <input type=text name=gender ><br>
<input type=submit name=submit value=add ><br>
</body>
</html>
您确实应该切换到prepared语句来解决您现在的sql注入问题,但您当前的问题是由于您没有执行POST
请求,因此if(isset($\u POST['submit']){
将始终返回false
过账表单的默认方法是GET
,因此将其更改为:
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
FYI,你完全可以接受。这也可能是你问题的原因。2014年,人们仍然在MySQL查询中发布$\u帖子……这太神奇了。难怪每年有超过一百万个网站被破坏。@Havenard那么我们现在用什么呢?在表单元素周围加上一些引号,lordie。另外,表单默认为无方法获取,更改method=“”
至method=“post”
阅读。。。