编码挑战
2支球队互相对抗,每支球队拥有15个位置和15名球员。球队的每个队都有45名球员,但是当比赛开始时,只有15名球员可以在他们各自的位置上开始比赛。因此,如果有45名球员,则允许教练从3种选择中选择1名球员。
我应该做什么
我有一个由15个不同的团队组成的团队,他们的阵容和位置都在这张桌子上。当用户从下拉菜单中选择一个团队时,它将通过下拉菜单显示该特定团队的不同职位和有资格被选择的球员,如下图所示:
**通过下拉菜单,用户可以在用户单击后选择15个不同的团队中的1个。如您在下一张图片中所看到的,将显示适合选择该特定位置的位置和球员**
现在,用户可以根据需要选择他的团队。从上图可以看到
我有的问题
显示小队成员和不同的选择选项非常容易,但是有2支球队互相对战,用户不仅要选择一支球队,还要选择两支球队。
因此,我需要让用户从团队下拉菜单中选择两个团队(图1),然后像对team1一样显示对team2的团队选择(请参见图2)。没运气
我的代码如下
<form name="team_select" method="post" >
Team :<select id="team1" name="team1_select[]" class="basic">
<optgroup label="New Zealand teams">
<option value="Crusaders">Crusaders</option>
<option value="Blues">Blues</option>
<option value="Highlanders">Highlanders</option>
<option value="Hurricanes">Hurricanes</option>
<option value="Chiefs">Chiefs</option>
</optgroup>
<optgroup label="Australian teams">
<option value="Brumbies">Brumbies</option>
<option value="Reds">Reds</option>
<option value="Rebels">Rebels</option>
<option value="Waratahs">Waratahs</option>
<option value="WesternForce">Western Force</option>
</optgroup>
<optgroup label="South African teams">
<option value="Stormers">Stormers</option>
<option value="Sharks">Sharks</option>
<option value="Bulls">Bulls</option>
<option value="Cheetahs">Cheetahs</option>
<option value="Lions">Lions</option>
<option value="Kings">*Kings*</option>
</optgroup>
</select>
<input type="submit" value="View" id="view" name="select" onclick="" />
</form>
<?PHP
$db_handle = mysql_connect($server, $user_name, $password);
$db_found = mysql_select_db($database, $db_handle);
//This code gets executed after form has been submitted
if(isset($_POST['select']))
{
foreach($_REQUEST["team1_select"] as $t1select)
{
$t1select = $t1select;
echo $t1select;
}//end foreach
//assign each position to variable position
$position = array("prop", "hooker", "prop", "lock", "lock", "flank", "flank", "no8", "scrumhalf", "flyhalf", "center", "center", "wing", "wing", "fullback");
//for loop to loop through the number of positions in the team, which will be used to query DB
$size = sizeof($position);
for($i=0; $i< $size; $i++){
//Query For Props
$sqlprops = mysql_query("SELECT * FROM `allsquads` WHERE `Team` ='$t1select' && `Position` = '$position[$i]'") or die(mysql_error());
echo'<form name="teamselect" method="post">';
echo '<br>';
echo $position[$i];
echo'<select name="team[]">';
//extract results
while($row = mysql_fetch_array($sqlprops))
{
//display various props names to select
echo '<option value="'.$row['Rating'].'">'.$row['Player'].'</option>';
}//end while
echo'</select>';
}//end for loop
}//end isset
?>
如果有人可以提供一些帮助或建议,将不胜感激。先感谢您
(PS,我知道我的代码容易受到sql注入的攻击,我应该使用PDO语句,但是我仍然在学习,我们的讲师建议我们现在使用不推荐使用的函数)
要构建此表单,我将有两组表单,分别由一个查询(拆分出数据)或两个单独的查询填充。我还将使用JavaScript来验证同一位玩家没有处于多个位置(因为我假设一个人不能处于多个位置)。
草莓可能是正确的,因为没有数据库就可以轻松地维护它,但是数据库将使其扩展变得更加容易(以及修改)。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句