[英]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.