Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/227.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP while循环中的多个选择框_Php_Sql - Fatal编程技术网

PHP while循环中的多个选择框

PHP while循环中的多个选择框,php,sql,Php,Sql,我正忙于完成一项大学作业,必须完成以下工作: 显示本周的体育赛事列表 用户提交他们认为会赢的团队 在周末,计算哪些用户的选择最正确 在上面的工作中,我创建了一个这样的表单,让用户选择他们认为会赢的人 表单数据从名为事件的数据库中收集,如下所示: 我的表单是用以下代码生成的 //create form echo'<form name="" action="" method="post">'; echo'<fieldset>'; echo

我正忙于完成一项大学作业,必须完成以下工作:

  • 显示本周的体育赛事列表
  • 用户提交他们认为会赢的团队
  • 在周末,计算哪些用户的选择最正确
在上面的工作中,我创建了一个这样的表单,让用户选择他们认为会赢的人

表单数据从名为事件的数据库中收集,如下所示:

我的表单是用以下代码生成的

   //create form
    echo'<form name="" action="" method="post">';
    echo'<fieldset>';
    echo'<legend>Make Your Picks</legend>';

//create query
$sql = "Select * FROM events";
$result = mysql_query($sql);

while($row=mysql_fetch_array($result)){
    $team1 = $row['team1'];
    $team2 = $row['team2'];

    //dislay teams
    echo'<h3>'.$team1.' VS '.$team2.'</h3>';
    echo'<select name="'.$row['event_id'].'">';
            echo'<option value="'.$row['team1'].'">'.$team1.'</option>';
            echo'<option value="'.$row['team2'].'">'.$team2.'</option>';
            echo'</select>';    
}//while

echo'</legend></fieldset>';
echo'<input type="submit" class="buttono" value="Submit" name="submit" />';
echo'</form>'
//创建表单
回声';
回声';
echo‘做你的选择’;
//创建查询
$sql=“从事件中选择*”;
$result=mysql\u查询($sql);
while($row=mysql\u fetch\u数组($result)){
$team1=$row['team1'];
$team2=$row['team2'];
//表演队
回显“.$team1.”与“$team2.”;
回声';
回声“.$team1.”;
回声“.$team2.”;
回声';
}//当
回声';
回声';
回声“
我希望获得更多经验丰富的用户对我的逻辑的意见,如果我走的是正确的道路,以及在实施方面我可以做得更好,也许还有一点建议,因为我对我目前的方法没有信心

  • 我在while循环中创建了多个选择框,每个选择框都有一个来自db的事件id值的唯一名称,该名称将被插入到picks数据库中(见下文),这似乎不是很有效。有没有其他方法可以实现这一点
  • 我为selctbox的name属性指定fixture_id的值是否正确

  • 你能推荐一种更有效的方法来解决这个问题吗


  • 我只是想获得一个有经验的用户对这个问题的看法会很有趣,使用一个数组作为
    name
    变量,比如
    name=“event[7]”
    ,它看起来像

    echo'<select name="event['.$row['event_id'].']">';
    

    为变量
    name
    使用数组,如
    name=“event[7]”
    ,如下所示

    echo'<select name="event['.$row['event_id'].']">';
    

    请它们不再得到维护,而是在使用。相反,请了解并使用。使用数组作为
    name
    变量,如
    name=“event[7]”
    然后在php中,您可以执行
    foreach($\u POST['event']as$event\u id=>$winner){//在此处执行操作}
    @cmorrissey将此作为回答。@JayBlanchard我知道它过时了,但我应该停止使用它的原因是什么……如果它没有损坏,就不要修复它。很快有一天@Marilee会有人更新你的服务器,当他们更新时,PHP也会随之升级。当这种情况发生时,所有使用
    mysql.*
    API的函数都将停止工作并开始抛出错误。最好在你控制局势的时候过渡。请。它们不再得到维护,而是在使用。相反,请了解并使用。使用数组作为
    name
    变量,如
    name=“event[7]”
    然后在php中,您可以执行
    foreach($\u POST['event']as$event\u id=>$winner){//在此处执行操作}
    @cmorrissey将此作为回答。@JayBlanchard我知道它过时了,但我应该停止使用它的原因是什么……如果它没有损坏,就不要修复它。很快有一天@Marilee会有人更新你的服务器,当他们更新时,PHP也会随之升级。当这种情况发生时,所有使用
    mysql.*
    API的函数都将停止工作并开始抛出错误。最好在你控制局势的时候过渡。我明白你的意思。非常感谢你的建议@C对不起,请建议/解释我应该如何处理名称变量?谢谢我明白你的意思非常感谢你的建议@C对不起,请建议/解释我应该如何处理名称变量?谢谢