Я генерируя неизвестное количество флажков в моей форме, используя MySQL, это число всегда будет меняться,Обработка неизвестное количество флажков
$frinfoq = mysql_query($frinfo) or die (mysql_error());
while($frow = mysql_fetch_assoc($frinfoq)) {
$username = $frow['username'];
$ct = $frow['country'];
$fruuid = $frow['uid'];
?>
<tr><td><p><?php echo $username; ?></p></td><td><p><?php echo $ct; ?></p></td><td><form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>" id="delf"><input type="hidden" value="<?php echo $fruuid; ?>" /><input type="checkbox" name="add[]" value="<?php echo $fruuid; ?>" id="a_t_game" /><form></td></tr>
<?php
}
?>
Когда форма передается и обрабатывается «create.php «он должен добавить только проверенных пользователей в таблицу mysql, строку для пользователя, я определяю (я не уверен, что это работает из-за проблемы, с которой я собираюсь добраться), которые проверяются следующим образом:
if($_POST['add'] == true) {
$user_uid = $_POST['add'];
}
Затем я пытаюсь добавить строки следующим образом:
$arr = array($user_uid);
foreach($arr as $user_uid) {
$game = "INSERT INTO wd_game (game_uid,user_uid,lastmove,startcountry) VALUES ('$gid','$user_uid',now(),'none')";
$gameq = mysql_query($game) or die (mysql_error());
}
Все входные данные прекрасно изолированы от пользовательского uid, который задан как «Массив». Он также создает только одну строку, и мне нужна строка для каждого пользователя.
Я знаю, что это проблема с обработкой моего массива, это довольно очевидно, но у меня нет самой туманной идеи о том, как ее исправить. Любая помощь/указатели будет большой помощью!
Y U НЕТ ИСПОЛЬЗОВАТЬ ЛИНИИ ПЕРЕРЫВЫ ?! Пришлось писать. Серьезно, однако, нет ничего плохого в том, чтобы сломать ваши строки на несколько строк. –
Пожалуйста, не используйте «== true» в операторах if. Они на 100% избыточны. –
Вы знаете, что [отмеченные флажки не будут определены в данных POST/GET] (http://stackoverflow.com/questions/2520952/how-come-checkbox-state-is-not-always-passed-along- к PHP-скрипт)? –