スポーツリーグのデータベースに備品を挿入するように設計されたフォームで問題が発生しています。
前のページには、_POST "area" / "division" / "season"を介して定義するフォームが含まれ、 "hometeam [$ i ] "、" awayteam[$i]"など。
フィクスチャの入力を処理するページで、フォームの個々の反復(つまり、「hometeam [1]」、「awayteam [1]」など)を$ _POST配列内からプルし、それをに挿入する必要があります。次のデータベースに移動する前のMYSQLデータベース。私はforeachとif句で完全に頭を悩ませているので、ここで質問するのが最善だと思いました。
<?php
$a=1;
while($a<11){
foreach($_POST as $key){
if(is_array($key))
{foreach($key as $value1=>$value2){
if($value1=$a){
if($_POST='hometeam')$home_id=$value2;
else if($_POST='awayteam')$away_id=$value2;
else if($_POST='day')$day=$value2;
else if($_POST='month')$month=$value2;
else if($_POST='year')$year=$value2;
else if($_POST='hour')$hour=$value2;
else if($_POST='mins')$mins=$value2;}
$date = ($year . "-" . $month . "-" . $day);
$time = (($hour) . ":" . ($mins) . ":00");
$enter_query = "INSERT INTO matches (home_id, away_id, date, time, league_id) VALUES ('$home_id', '$away_id', '$date', '$time', '$league_id'";
if($hour != "00"){
$enter_result = mysql_query($enter_query);
}}}
}
$a++;
}
?>
私がここで露骨に間違っているところを誰かが指摘できれば、私は非常に感謝するでしょう。これほど難しいことではないと思いますが、私は慌てて、入力した内容を超えて見ることができず、私の知識が現状のまま正確であるかどうかはわかりません。
配列でprint_rを実行すると、次の構造が得られます。
Array ( [area] => 1 [season] => 2 [division] => 1 [hometeam]
=> Array ( [1] => 17 [2] => 2 [3] => 12 [4] => 17 [5] => 17
[6] => 17 [7] => 17 [8] => 17 [9] => 17 [10] => 17 ) [awayteam]
=> Array ( [1] => 6 [2] => 4 [3] => 10 [4] => 17 [5]
ここで、同じ10倍の構造が続き、配列はhometeam、awayteam、day、month、year、hour、minsとしてインデックス付けされます。