我需要什么:
- 当用户从下拉菜单中选择多个值时,必须在数据库中插入所有值。
我的问题:
-
只插入单个值
这是我的代码快照:http://postimg.org/image/h3on9ti6r/.
下面是我使用 的示例代码:if(isset($_POST['submit'])) { $team=$_POST['team']; $teamname=$_POST['teamname']; $query="INSERT INTO teamname(People_Name, Team_Name) VALUES ('".$team."','".$teamname."')" ; $rs=mysql_query($query); $num=mysql_num_rows($query); }
<form id="contactForm" action="" method="post">
<fieldset>
<p>
<label for="name" >Team</label>
<input type="hidden" id="123">
<select multiple id="e2" name="team[]" style="width:300px">
<?php
$query= mysql_query("select Distinct Name from users ");
while($result=mysql_fetch_assoc($query)){
?>
<option value=" <?php echo $result['Name']?> "><?php echo $result['Name']?></option>
<?php
}
?>
</select>
</p>
<p>
<label for="Team Name">Enter the Team Name</label>
<textarea name="teamname" id="teamname" type="text" rows="5" cols="20" class="form-poshytip" title="Enter the Team Name"></textarea>
</p>
<!-- ENDS send mail configuration -->
<p><input type="submit" value="Send" name="submit" id="submit" /> <span id="error" class="warning">Message</span></p>
</fieldset>
我已经尝试了我更新的代码,但问题:只有一个文件被插入
if(isset($_POST['submit']))
{
$team=$_POST['team'];
$teamname=$_POST['teamname'];
$ct = 0;
foreach ($team as $value)
{
echo $value;
echo $query="INSERT INTO teamname(People_Name) VALUES ('".$value."')" ;
$rs=mysql_query($query);
$num=mysql_num_rows($query);
serialize($team);
$ct++;
}
$c = 0;
foreach ($teamname as $value1)
{
echo $value1;
echo $query1="INSERT INTO teamname(Team_Name) VALUES ('".$value1."')" ;
$rs1=mysql_query($query1);
$num=mysql_num_rows($query1);
serialize($teamname);
$c++;
}
}
team
将是您的$_POST
中的数组。您必须遍历其元素以将所有值插入到数据库中。
if(isset($_POST['submit']))
{
$team=$_POST['team'];
// Do not trust the data that is submitted by the user.
// Prevent yourself from SQL injection.
$teamname=mysql_real_escape_string($_POST['teamname']);
foreach ($team as $t) {
$query="INSERT INTO teamname(People_Name, Team_Name) VALUES ('".$t."','".$teamname."')" ;
$rs=mysql_query($query);
$num=mysql_num_rows($query);
}
}
您不应该使用mysql_*
函数,它们已被弃用,请使用mysqli_*
版本或PDO。我推荐后者。这样更安全。你可以在这里找到更多信息。