0
我在PHP初学者,我想插入值转换成使用PHP插入查询我的下拉值我的数据库表,我有一个错误插入数据,并且还希望更新数据库表的存在价值时插入新值到数据库表中,这里是我的代码帮我解决这个问题,我的代码如下:如何插入和更新值到数据库表中的PHP
<?php
include 'dbconfig.php';
?>
<html>
<head>
<title>Sales Panel App</title>
</head>
<body>
<form method="POST" name="myForm" action="<?php $_PHP_SELF ?>">
<table border="1">
<tr>
<td>Sales Person List</td>
<td>
<?php
$sql="select name,id from sales order by name";
echo "<select name = 'salelist' value=''>Sales Person Name</option>";
echo "<option value = 'Select Sales Person' selected>Select Sales Person</option>";
{
foreach ($conn->query($sql) as $row){
echo "<option value=$row[id]>$row[name]</option>";
}
echo "</select>";
}
echo "<br>";
?>
</td>
</tr>
<tr>
<td>No of Panels</td>
<td><input type="text" name="panelnumber" size="1"></td>
</tr>
</table>
<p><input type="submit" value="Submit" name="submit" id="submitdata"></p>
</form>
<?php
$salelist = $_POST['salelist'];
$panelnumber = $_POST['panelnumber'];
$sql2 = "select * from sales where name = $salelist";
$result = mysqli_query($sql2);
if ($row = mysqli_fetch_array($result)) {
$oldvalue = $panelnumber;
$newvalue = $oldvalue + $panelnumber;
$query = 'update sales where name = $panelnumber';
}
else {
$qry = "insert into sales (id, name, panelnumber) values ('', $salelist, $panelnumber)";
}
?>
</body>
</html>
夫妇一般点,首先检查'$ _ POST [“salelist”] '使用'if(isset($ _ POST ['salelist']))'设置,你将避免这种警告。您在那里插入数据库连接下的代码。在输出到浏览器之前尝试执行业务逻辑。 – Rasclatt
三,不要这样做''select * from sales where name = $ salelist“',这是不安全的。最后,如果你这样做,你需要大约'$ salelist' – Rasclatt
最佳单引号将用户提交的数据时,使用绑定参数功能。如果你这样做,你现在有(' “选择销售*其中名称= $ salelist”'和' “插入销售(ID,姓名,panelnumber)VALUES( '',$ salelist,$ panelnumber)”'和' '更新销售名称= $ panelnumber''),你是开放的SQL注入。 – Rasclatt