这里我试图将数据存储到数据库中,它会工作成功但是当我被看到数据库然后为Assigned To它将只存储名字,例如,assign_to = Trilok Dethariya的值,然后在数据库中它只会存储Trilok for assign_to字段,如何将全名存储到其中。
<label>Assigned To</label>
<?php
$sqll="SELECT Full_name FROM user_master where Role='Project Manager'";
$rows = $conn->query($sqll);
echo "<select class='form-control' name='assign_to'>";
echo "<option value=''>Select One</option>";
while($row= $rows->fetch_assoc() )
{
echo "<option value=".$row['Full_name'].">".$row['Full_name']."</option>";
}
echo "</select>";
?>
</div>
</div>
</form>
<?php
if ($_SERVER["REQUEST_METHOD"] == "POST")
{
$assign_to = (filter_input(INPUT_POST, 'assign_to'));
}
答案 0 :(得分:2)
如果你没有全名使用这个逻辑而不是你需要在这里做一些改变
您必须将空格替换为名字和姓氏之间的下划线,并且您在那里获得价值您必须将下划线替换为空格。 改变这里
while($row= $rows->fetch_assoc() )
{
echo "<option value=".str_replace(' ', '_', $row['Full_name']).">".$row['Full_name']."</option>";
}
答案 1 :(得分:0)
好像你只将第一行发布到数据库中。也许创建和额外查询/或更新自己的。
答案 2 :(得分:0)
您必须在html中引用属性值:
echo "<option value='".$row['Full_name']."'>".$row['Full_name']."</option>";
使用字符串插值,可以将其更清晰地写为
echo "<option value='{$row['Full_name']}'>{$row['Full_name']}</option>";
更好的是,规范化您的数据,并使用ID而不是名称:
$sqll="SELECT ID, Full_name FROM user_master where Role='Project Manager'";
...
while($row= $rows->fetch_assoc() )
{
echo "<option value='{$row['ID']}'>{$row['Full_name']}</option>";
}