トーナメントでROUNDの各ゲームに勝つチームをユーザーが選択するPick'emアプリケーションをコーディングしようとしています。 I.Eトーナメントには多くのラウンドがあり、ラウンドごとに勝者を計算し、勝利を記録します。配列をループするときの初期化されていない文字列オフセット
私は現在ラウンド
の最後に受賞者を得ることに取り組んでいます以下のような問題に取り組むために私のロジックは次のとおりです。
- EVENT INFO
- はMEMBER SELECTIONSをゲット
- GET受賞チーム
- GETメンバーWHO SELEC TED CORRECT TEAM(私の問題はここにある!)のメンバーは、私はそれのDB構造部分はこの のように見えていラウンド
のために最も正確なチームを選択し
私は以下のコードを投稿しています。誰かが私が間違っている場所を教えてくれることを願っています。ワーキング
Uninitialized string offset
)Iは、テストされ、次の
- ステップ1を確認することができます
- ステップ-5最初にステップ4を修正します。
// ### STEP 1 ###
//GET EVNT INFO
$sql="Select * FROM events WHERE tournament = 'IPL' AND round ='5'";
$result = $db->prepare($sql);
$result = $db->query($sql);
foreach($result as $results){
$eventNr[] = $results['event_id'];
$t1[] = $results['team1'];
$t2[] = $results['team2'];
$t1Score[] = $results['team1Score']; //Event finished score uploaded
$t2Score[] = $results['team2Score']; //Event finished score uploaded
}//foreach
//### STEP 2 ###
//GET MEMBER SELECTIONS
$sql="Select * FROM multiple_picks WHERE tournament = 'IPL' AND round ='5' ORDER BY round_game_nr";
$result = $db->query($sql);
foreach($result as $results){
$memberNr[] = $results['member_nr'];
$pickId[] = $results['pick_id'];
$eventId[] = $results['event_id'];
$pick[] = $results['pick'];
$score[] = $results['score'];
$tournament[] = $results['tournament'];
$round[] = $results['round'];
$rgm[] = $results['round_game_nr'];
}//for each
####STEP 3 ######
//GET Winning Teams
$winner = array();
foreach($eventNr as $id => $winners){
if($t1Score[$id] > $t2Score[$id]){
$winner = $t1[$id];
}//if
else if($t2Score[$id] > $t1Score[$id]){
$winner = $t2[$id];
}//else if
}//foreach
#### STEP 4 GET MEMBERS WHO SELECTED CORRECT TEAM ####
//GET WINNING MEMBERS
$correct = array();
foreach($pickId as $id => $picked){
if($pick[$id] == $winner[$id])
{
echo $correct = $memberNr[$id];
}
}
?>
任意のヘルプまたはアドバイスが大幅に一つだけのイベントあなたの最初のクエリの戻りを想定すると
は、完全なエラーメッセージを表示してください。**とそれが参照する行表示** – deceze
この行は現在の出力を何? – KDOT
@decezeエラーメッセージは最後の 'foreach'の' ifステートメント 'で' uninitialized string offset'です –