![](/img/trans.png)
[英]PHP assign MySQLi database value to a PHP variable based on selected row
[英]Query based on value selected mysqli
我无法根据选择的选项插入值。因此,如果从下拉列表中选择的Type1低于其他类型2,则在选择Type 2的情况下会出现错误/即使在选择Type 2的情况下也尝试保留null值,但仅给出error。选择1插入数据。
include_once('db.php');
if(isset($_POST['submit'])) {
$id = mysqli_real_escape_string($db ,$_POST['id']);
$Type = mysqli_real_escape_string($db ,$_POST['type']);
$Date = mysqli_real_escape_string($db ,$_POST['date']);
$Treat = mysqli_real_escape_string($db ,$_POST['treat']);
if($Type=="1")
{
$sql= "INSERT INTO set1(id,type,date,Treat)
VALUES('$id','$Type','$Date','$Treat')";
$query = mysqli_query($db, $sql) or die(mysqli_error($db));
if(!$query)
echo "You have to fill all values";
else
echo "successfully inserted";
}
else
{
$sql= "INSERT INTO set1(id, type, date)
VALUES('$id', '$Type', '$Date')";
$query = mysqli_query($db, $sql);
if(!$query)
echo mysqli_error();
else
//echo "successfully inserted";
echo"<script> alert('Data inserted Successfully'); window.close(); window.opener.location.reload(true);</script>";
}
}
?>
未定义索引:对待意味着
1-您的html中未定义name="treat"
2-您的html应该是这样的
<input type="text" name="treat">
并更改以下
if(Type=="1")
{
同
if($Type==1)
{
您的完整HTML
<td class="desc" width="46%" align="right">Treat</td>
<td class="desc2" width="54%" align="left">
<span class="desc1">
<select name="treat" style="width:36mm">
<option value="">Select</option>
<?php
$sql = "SELECT treat FROM add_treat ORDER BY treat " ;
$result = mysqli_query($db,$sql);
while ($row = mysqli_fetch_array($result)) { ?>
<option value="<?php echo $row['treat']; ?>"></option><?php echo $row['treat']; ?></option>
<?php }
?>
</select>
正确,您需要评估$ Type而不是Type(它可能是保留字,并且如果这样总是评估为false)。 可能只有第二个$ sql查询正在处理。
一旦正确获取了eval语句,然后仔细检查第一个$ sql字符串:
"INSERT INTO set1(id,type,date,Treat)
VALUES('$id','$Type','$Date','$Treat',)"
不是有效的SQL语句-结尾处有一个逗号
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.