如何在PHP中检索全名(两个单词之间的空格)?

时间:2015-03-11 11:13:57

标签: php

这里我试图将数据存储到数据库中,它会工作成功但是当我被看到数据库然后为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'));
    }                       

3 个答案:

答案 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>";     
}