Php concat显示名字和姓氏,但仅将名字保存到mysql数据库
我已经在网上搜索了几个小时,但我不知道为什么如果它以正确的形式显示,为什么它不能正确地保存到mysql数据库 在我的表格上,我有一个下拉列表,显示学生姓名,我使用以下代码获取下拉列表的名字和姓氏:Php concat显示名字和姓氏,但仅将名字保存到mysql数据库,php,mysql,mysqli,Php,Mysql,Mysqli,我已经在网上搜索了几个小时,但我不知道为什么如果它以正确的形式显示,为什么它不能正确地保存到mysql数据库 在我的表格上,我有一个下拉列表,显示学生姓名,我使用以下代码获取下拉列表的名字和姓氏: <?php $stud_sql = "SELECT CONCAT (First_name,' ', Last_name) AS fullname FROM students"; $stud_results = mysqli_query($db_conx, $stud_sql);
<?php
$stud_sql = "SELECT CONCAT (First_name,' ', Last_name) AS fullname FROM students";
$stud_results = mysqli_query($db_conx, $stud_sql);
echo "<select name='fullname'>";
while ($row = mysqli_fetch_array($stud_results, MYSQLI_ASSOC)){
$fullname = $row['fullname'];
echo "<option value=".$row['fullname'].">" . $row['fullname'] . "</option>";
}
echo "</select>";
?>
您试图在保存全名的字段“studentname”中插入,但从“First\u name”和“Last\u name”中检索它。要么在正确的字段中插入名字和姓氏(我建议这样做),要么在字段中插入全名
编辑-看起来好像有人正在玩的很开心,马上向下投票回答,长大。你有一个HTML错误
在这一行
"<option value=".$row['fullname'].">"
看起来您没有正确使用数据库。您应该为学生选择一个ID,以及他们的姓名,例如
SELECT id, CONCAT(first_name, ' ', last_name)
FROM students
然后使用
<option value="$id">$fullname</option>
$fullname
以你的形式
提交后,您将$id值插入incidentform,现在您已经获得了事件和学生之间的链接,该链接基于公共id字段。你的系统基本上会搞垮任何碰巧有共同名字的学生。e、 g.“约翰·史密斯”(id#42)被拘留,但你只在事件报告中存储“约翰·史密斯”。现在约翰·史密斯(#37)和约翰·史密斯(#203)也遇到了麻烦。而不是在线搜索(你在搜索什么?)您必须调试这段代码…并查看页面源代码作为调试的一部分。现在问题可能会因为过于本地化而被关闭。我已经做了您建议的更改,只做了一个小更改,现在我可以将这两个名称添加到数据库中,但列表中只显示一个名称?还考虑到学校只有80个名称学生不太可能有两个学生同名,但更不可能的是他们会在同一个班级,因为特殊需要学校年龄不是班级形成的因素。
"<option value='".$row['fullname']."'>"
SELECT id, CONCAT(first_name, ' ', last_name)
FROM students
<option value="$id">$fullname</option>