Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Сумма значений

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
Acuna
Отправлено: 02 Октября, 2009 - 23:18:22
Post Id



Гость


Покинул форум
Сообщений всего: 87
Дата рег-ции: Июль 2008  


Помог: 0 раз(а)




Здравствуйте, уважаемые разработчики! Улыбка

У меня есть следующий код:

CODE (text):
скопировать код в буфер обмена
  1. <input type="radio" value="1" name="answer_1">
  2. <input type="radio" value="2" name="answer_1">
  3. <input type="radio" value="3" name="answer_1">
  4.  
  5. <input type="radio" value="1" name="answer_2">
  6. <input type="radio" value="2" name="answer_2">
  7. <input type="radio" value="3" name="answer_2">

Вот у меня вопрос: например, пользователь выбрал в answer_1 значение 2, а в answer_2 - значение 3. А как можно посчитать сумму выбранных значений value (в данном случае должно получится 5). Просто таких пунктов очень много...
Вроде на пальцах объяснил... Закатив глазки

Заранее благодарен!

(Отредактировано автором: 02 Октября, 2009 - 23:25:55)



-----
The Lisalover
!!! I LOVE PHP !!!
 
 Top
-=1100=-
Отправлено: 03 Октября, 2009 - 01:40:25
Post Id



Частый гость


Покинул форум
Сообщений всего: 156
Дата рег-ции: Май 2007  
Откуда: Город Святого Петра


Помог: 0 раз(а)

[+]


PHP:
скопировать код в буфер обмена
  1. <form action='' method='POST'>
  2.  
  3. <input type="radio" value="1" name="answer_1">-1<br>
  4.  
  5. <input type="radio" value="2" name="answer_1">-2<br>
  6.  
  7. <input type="radio" value="3" name="answer_1">-3<br>
  8.  
  9. <br><br>
  10.  
  11. <input type="radio" value="1" name="answer_2">-1<br>
  12.  
  13. <input type="radio" value="2" name="answer_2">-2<br>
  14.  
  15. <input type="radio" value="3" name="answer_2">-3<br>
  16.  
  17. <input type='submit' />
  18.  
  19. </form>
  20.  
  21. <?
  22.  
  23. if(!empty($_POST['answer_1']) && !empty($_POST['answer_2']) ){
  24.  
  25. $answer1=$_POST['answer_1'];
  26.  
  27. $answer2=$_POST['answer_2'];
  28.  
  29. $summa=$answer1+$answer2;
  30.  
  31. echo($summa);
  32.  
  33. }


-----
INSPIRON |6400
 
 Top
Acuna
Отправлено: 03 Октября, 2009 - 12:40:49
Post Id



Гость


Покинул форум
Сообщений всего: 87
Дата рег-ции: Июль 2008  


Помог: 0 раз(а)




К сожалению,


не получится, т. к. как я написал выше, пунктов answer ну ооочень много, и их невозможно так просто сложить.

Вообще-то я пишу модуль тестов. практически написал, а проблема осталась только за этим - чтобы вывести финальный результат... :/


-----
The Lisalover
!!! I LOVE PHP !!!
 
 Top
RomAndry Администратор
Отправлено: 03 Октября, 2009 - 13:24:05
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 913
Дата рег-ции: Янв. 2008  


Помог: 6 раз(а)




сделать обход $_POST в цикле
 
My status
 Top
Acuna
Отправлено: 03 Октября, 2009 - 14:11:03
Post Id



Гость


Покинул форум
Сообщений всего: 87
Дата рег-ции: Июль 2008  


Помог: 0 раз(а)




Оп! А... извиняюсь за такой вопрос... а это как? Примерно...


-----
The Lisalover
!!! I LOVE PHP !!!
 
 Top
EuGen Администратор
Отправлено: 03 Октября, 2009 - 14:36:09
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)






-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
movEAX
Отправлено: 03 Октября, 2009 - 14:49:36
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 750
Дата рег-ции: Авг. 2009  


Помог: 16 раз(а)




PHP:
скопировать код в буфер обмена
  1. // в случае если POST будет содержать иные данные помимо ответов
  2.  
  3. $arrAnswer =array_flip($_POST);
  4.  
  5. $arrAnswer = array_flip(preg_grep('!answer_\d!',$arrAnswer));
  6.  
  7.  
  8.  
  9. foreach($arrAnswer as $intAnswer){
  10.  $totalAnswers +=$intAnswer;
  11. }
  12.  
  13. print $totalAnswers;


И еще вариант:

PHP:
скопировать код в буфер обмена
  1. // в случае если POST будет содержать исключительно ответы
  2.  
  3.  
  4. foreach($_POST as $intAnswer){
  5.  $totalAnswers +=$intAnswer;
  6. }
  7.  
  8. print $totalAnswers;


ps: работспособность не проверял, но по идее работать должно.

(Отредактировано автором: 03 Октября, 2009 - 14:51:04)



-----
армия.. самое убогое место
 
 Top
Acuna
Отправлено: 03 Октября, 2009 - 19:11:53
Post Id



Гость


Покинул форум
Сообщений всего: 87
Дата рег-ции: Июль 2008  


Помог: 0 раз(а)




Во! Огромное спасибо! Подмигивание

!!! PHP.SU ЛУЧШИЙ !!!

!!! I LOVE PHP !!!


-----
The Lisalover
!!! I LOVE PHP !!!
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB