[英]How to insert the value of multiple drop-down menus in PHP
我有一个页面可以插入会议详细信息,此插入表单的各个部分之一是从db中现有的成员列表中选择出席者。 我的问题是:如何在mysql db中插入许多下拉菜单(最大菜单数等于成员总数)。 这种方法在其他情况下效果很好,我所做的唯一区别是它是文本的输入类型而不是选择菜单。 那么,我在这里错过了什么?
波纹管所有代码:
更新:
如果我理解:
您不会写特定会议的出席人数吗?
如果是这种情况, 您应该已经知道您的“ meetingID”。
// for example ...
$meetingID = $_POST['meetingid'];
$reruslt =& mysql_query('INSERT INTO meetingattendance (meetingID, attendance) VALUES ('.$meetingID.', "'.$new_attendence.'")', $conn);
if(!$reruslt) die( 'mySQL err. '.mysql_errno($conn).': '.mysql_error($conn) );
LAST_INSERT_ID()仅返回最后插入的自动增量键,在这种情况下为“ boardmeetings.meetingID”。
CONSTRAIN FOREIGN KEY确保您不能在“ boardmeetings”中不存在的“ meetingattendance”中插入meetingID。
您仅应在插入 “ boardmeetings” 之后直接使用LAST_INSERT_ID()。
MYSQL :
INSERT INTO `boardmeetings`(`meetingID`) VALUES ('');
@lastID = LAST_INSERT_ID();
INSERT INTO meetingattendance (meetingID, attendance) VALUES (@lastID, 'new_attendence');
或在PHP中
$reruslt =& mysql_query('INSERT INTO boardmeetings (meetingID) VALUES ('')', $con);
$lastID = mysql_insert_id($conn);
$reruslt2 =& mysql_query('INSERT INTO meetingattendance (meetingID, attendance) VALUES ('.$lastID.', "'.$new_attendence.'")', $conn);
if(!$reruslt2) die( 'mySQL err. '.mysql_errno($conn).': '.mysql_error($conn) );
您能告诉我代码在boardmeetings
会议中插入新会议的位置boardmeetings
? 我相信您是在if (isset ($_POST['attendence'])&& $_POST['attendence']!='none')
这是您完整的addMeeting.php代码吗?
<?php
$dbhost="XXX";
$dbuser="XXX";
$con = mysql_connect($dbhost,$dbuser, "XXX");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
echo 'Connected successfully';
$query = "SELECT * FROM `boardteam` ORDER BY fName ASC";
mysql_select_db('dahBoard');
$result = mysql_query($query);
if ($result)
{
while($db_field = mysql_fetch_assoc($result))
{
$Attendence .= "<option value=".$db_field['nationalID'].">".$db_field['titleName']."."." ".$db_field['fName']." ".$db_field['sName']." ".$db_field['lName']."</option>";
}
}
if(isset($_POST['add']))
{
if (isset ($_POST['attendence'])&& $_POST['attendence']!='none') {
for ($i = 0; $i < count($_POST['attendence']); $i++) {
$new_attendence = $_POST['attendence'][$i];
$query = "INSERT INTO `meetingattendance`(`meetingID`, `attendance`)
VALUES (LAST_INSERT_ID(),'$new_attendence')";
mysql_query($query) or die('Error, query failed');
}
}
}
?>
我将方案更改为:我没有创建多个下拉列表,而是创建了一个多个值的选择列表,并且可以管理用户选择的值的数组并将其成功插入^^
因此,不要使您的代码复杂化>艰苦的课程:)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.