Форум программистов, компьютерный форум, киберфорум
PHP
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
0 / 0 / 0
Регистрация: 25.07.2010
Сообщений: 9

Обработчик циклической формы =)

26.07.2010, 23:26. Показов 737. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть форма для обновления статистики, которая выводится циклом из бд [Ссылка удалена!]
Идея тут в том, чтобы вставлять в бд новые записи сразу по всем доступным в бд никам.
Код такой:

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
//статичная часть таблицы
$output ="
<tr>
<td>
<form id='form1' name='form1' method='post' action='$mlink&op=reg_data'>
  <table width='100%' border='1' cellspacing='0'>
    <tr>
      <td align='center' bgcolor='#DDDDDD'><b>Имя</b></td>
      <td align='center' bgcolor='#DDDDDD'><b>R</b></td>
      <td align='center' bgcolor='#DDDDDD'><b>Время игры</b></td>
      <td align='center' bgcolor='#DDDDDD'><b>Побед и арестов:</b></td>
    </tr>";
 
//содержимое, выводящееся циклом
$DB->query( "SELECT name, ide FROM mkp_stats GROUP BY name ORDER BY name");
        while( $row = $DB->fetch_row($query) ) {
        $name=$row['name'];
        $ide=$row['ide'];
$output .="
    <tr>
      <td>$name<input name='name$ide' type='hidden' id='name$ide' value='$name'/>
      <input name='ide$ide' type='hidden' id='ide$ide' value='$ide'/></td>
      <td align='center'><input name='r$ide' type='text' id='r$ide' size='4' maxlength='4' /></td>
      <td align='center'><input name='days$ide' type='text' id='days$ide' size='3' maxlength='3' />
        д,
        <input name='hours$ide' type='text' id='hours$ide' size='3' maxlength='3' />
        ч,
        <input name='min$ide' type='text' id='min$ide' size='3' maxlength='3' />
        м</td>
      <td align='center'>
        <input name='kills$ide' type='text' id='kills$ide' maxlength='255' />
      </td>
    </tr>";
}
 
//статичная часть таблицы
$output .="
  </table>
    <tr>
      <td colspan='4' align='center'>
        <input type='submit' name='submit' id='submit' value='Отправить' />
      </td>
    </tr>
</form>
</td>
</tr>
";
К именам всех инпутов в форме цепляется $ide - уникальный для каждого ника номер, поэтому name инпутов пронумерованы отдельно для каждого ника, и не совпадают. Нужен обработчик для всей этой прелести.) В нормальном виде он выглядит так (некоторые поля опущу для простоты):

PHP
1
2
3
4
5
6
7
8
if ($mkportals->input['op'] == "reg_data") {
$ide = $mkportals->input['ide'];
$name = $mkportals->input['name'];
$r = $mkportals->input['r'];
$kills = $mkportals->input['kills'];
 
$DB->query( "INSERT INTO mkp_stats (ide, name, r, kills) VALUES ('$ide', '$name', '$r', '$kills')");
}
Но, вместо input['name'] например, теперь здесь должно быть что-то вроде input['name&number'] и этот обработчик нужно как-то зациклить по количеству уникальных ide в бд. В общем, то что это реализуемо, я понял, но из за нехватки фантазии не получается реализовать самому.) Надеюсь на вашу помощь.
 Комментарий модератора 
Размещайте скриншот вместо ссылки на сайт
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
26.07.2010, 23:26
Ответы с готовыми решениями:

Форма и обработчик формы
Здравствуйте! Подскажите, пожалуйста, в чем проблема? есть форма &lt;form method=&quot;post&quot; action=&quot;&quot;&gt; ...

Обработчик формы. список
Помогите люди) Как изменить обработчик формы, а то последняя переменная(name=&quot;vibor&quot;) передает пустое значение. &lt;form...

Обработчик формы
есть форма с двумя input и одним textarea и есть обработчик формы form action=&quot;mail.php&quot; method=&quot;post&quot;&gt; &lt;input...

3
Программист
 Аватар для motakuji
107 / 111 / 9
Регистрация: 27.09.2009
Сообщений: 331
27.07.2010, 09:33
Загоняй всё это в массив. Та будет проще. Давай названия след образом
HTML5
1
<input name="ide[$ide]" type='hidden' id="ide[$ide]" value="$ide" />
И в обработчике пробежишься по массиву и всё

PHP
1
2
3
foreach($_POST['ide'] as $key => $val){
   // делаешь всё,что тебе нужно
}
1
0 / 0 / 0
Регистрация: 25.07.2010
Сообщений: 9
27.07.2010, 17:57  [ТС]
Всё, проблема решена.) Сделал так: инпутам дал имена name[], тоесть они автоматически пронумеровались с нуля. А обработчик такой:

PHP
1
2
3
4
5
6
7
8
9
10
11
if ($mkportals->input['op'] == "reg_data") {        
$ide = $mkportals->input['ide'];
$name = $mkportals->input['name'];
$r = $mkportals->input['r'];
$kills = $mkportals->input['kills'];
 
$n = count($ide);
while( $n > 0 ) {
$n=$n-1;
$DB->query( "INSERT INTO mkp_stats (ide, name, r, kills) VALUES ('$ide[$n]', '$name[$n]', '$r[$n]', '$kills[$n]')");
}
Вот что значит взяться на свежую голову.)
0
Программист
 Аватар для motakuji
107 / 111 / 9
Регистрация: 27.09.2009
Сообщений: 331
28.07.2010, 09:48
Ну дык я тебе то же самое и написал
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
28.07.2010, 09:48
Помогаю со студенческими работами здесь

Обработчик формы
Помогите разобраться с обработчиком формы. Как же они достали меня( Голову сломал. Ошибки не вижу. Сообщение на почту с данными не отсылает...

обработчик формы
всем привет! написал обработчик формы, который должен передавать данные, указанные пользователем мне на мыло &lt;?php $result =...

Обработчик формы
Есть форма contact_form.php: &lt;!DOCTYPE HTML&gt; &lt;html&gt; &lt;head&gt; &lt;meta charset=&quot;utf-8&quot;&gt; &lt;title&gt;Форма&lt;/title&gt; &lt;link...

Обработчик формы
Всем привет! Прошу помочь с обработчиком формы. Нашел какой то простенький скрипт в инете попытался его переделать и ничего не вышло. ...

обработчик формы
Как без базы данных создать данные для входа в админблок? Есть вот такая простая форма, и надо чтобы можно было в админку входить через...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Сборка библиотек SDL3 и Box2D из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия SDL 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual. . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru