Ive получил цикл, который создает несколько полей выбора, как это:
Код, который генерирует selectboxes выглядит следующим образом:
while($row=mysql_fetch_array($result)){
$team1 = $row['team1'];
$team2 = $row['team2'];
$id[$i]= $row['event_id'];
echo'<h3>'.$team1.' VS '.$team2.'</h3>';
echo'<select name="id[]">'; //this is team winner selectbox
echo'<option value="'.$row['team1'].'">'.$team1.'</option>';
echo'<option value="'.$row['team2'].'">'.$team2.'</option>';
echo'</select>';
echo'By <select name="score[]">'; //this is score selectbox
echo'<option value="1">1</option>';
echo'<option value="2">2</option>';
echo'<option value="3">3</option>';
echo'<option value="4">4</option>';
echo'<option value="5">5</option>';
echo'<option value="6">6</option>';
echo'</select>';
}//while
Здесь приходит сложная часть Мне нужно извлечь выбранные результаты из selectboxes, который содержит значения 'event_id,' won_team, 'score' и вставить в базу данных:
Im используя следующий код, чтобы извлечь выбранные результаты, которые я мог бы получить, чтобы работать, но при добавлении поля оценка я начал получать ошибки:
foreach($_POST['id'] as $key => $winner){
echo $winningScore = $_POST['score'] ;
$winnerb = $id[$key];
echo($winner."-".$winnerb);
echo $winningScore;
$sql="INSERT INTO picks(member_nr,event_id,pick,score)
VALUES('$userId','$winnerb','$winner',$winningScore)";
mysql_query($sql) or trigger_error(mysql_error()." in ".$sql);
}//for
Мое естественное предположение было бы добавить forloop в forloop но это вызовет внутренний цикл для многих итераций, поэтому я использую логику назначения значения $ POST ['score] для массива $ wonScore и затем отправки этого запроса к базе данных, но я получаю сообщение об ошибке «array to строка преобразования "для массива $ wonScore.
UPDATE: $ winningScore содержит следующие значения, которые правильно на основе выбора оценка:
Любые предложения приветствуются
Попробуйте использовать var_dump, чтобы увидеть, что происходит –
'$ winScore' это массив. Вы выбираете так странно, 'score []' его использовали для нескольких опций, но вы потеряли атрибут 'multiple' – mcklayin
@JoeDF, см. Обновление по вопросу, для результата var_dump() – Marilee