Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.11.2011, 14:31   #1
romeno
 
Регистрация: 21.11.2011
Сообщений: 6
По умолчанию Как реализовать интерактивную HTML форму, в которой елементы выводятся при заданных условиях

Здравстуйте уважаемые форумчане.
При активном освании PHP у меня возникла проблема.
Требуется создать форму в которой 5 елементов <select> и все данные для их вариантов <option> выводятся из базы данных. Все значения value - это числа, из которых потом страница обработки рассчитывает конечную сумму. Это типа калькулятор.
Условия:
<select name="k1"> - 5 значений (b1,b2,b3,b4,b5)

<select name="k2">- 5 значений

<name="k3">- 2 значения (a1, a2) (Если в select name="k1" выбрано b1,b2 или b3 - то на страницу обработки отпр. число 1 вне зависимости от выбора name="k3". Если в select name="k1" выбрано b4 или b5 то значения подставляются в зависимости от выбора пользователя значения а1 или а2)

<select name="k4">- 2 значения (Если в select name="k3" выбрано значение a1, то для select name="k4" доступно два значения. которые можно выбрать, но если в select name="k3" выбрано а2 то select name="k4" пропадает или становится неактивным, а на страницу обработки отправится число 1.2)


<select name="k5"> обычный 7 значений

То есть selekt k2 и k5 обычные елементы, а k1, k3, k4 зависимы между собой.

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

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

Код не помещается в одном посте, поєтому будет в следующем.
romeno вне форума Ответить с цитированием
Старый 21.11.2011, 14:34   #2
Zer0
Форумчанин
 
Аватар для Zer0
 
Регистрация: 13.12.2007
Сообщений: 788
По умолчанию

javaScript + обработка событий onSelect, а там уже любую логику поведения, какую Вам нужно
благодарность - сюда (не забываем писать от кого)
Zer0 вне форума Ответить с цитированием
Старый 21.11.2011, 14:35   #3
romeno
 
Регистрация: 21.11.2011
Сообщений: 6
По умолчанию

Код формы:

PHP код:
[CODE] <FORM METHOD="post" ACTION="#">
                
    <table class="#">
        <tr>
            <td>A1</td>
            <td><select name="k1">
                    <?
                    $result11
mysql_query ("SELECT title,k FROM k_k1 ORDER BY id",$db);

                    if (!
$result11)
                        {
                        echo 
"<p>Запрос на выборку данных из базы не прошел</p> ";
                        exit (
mysql_error());
                        }

                    if (
mysql_num_rows ($result11) > 0)
                        {
                        
$myrow11mysql_fetch_array ($result11);

                        do

                            {
                            
printf ("<option value='%s'>%s</option>"$myrow11["k"], $myrow11["title"]);
                            }

                        while (
$myrow11mysql_fetch_array ($result11));
                        }

                    else
                        {
                        echo 
"<p>Информация по запросу не может быть извлечена. В таблице нет записей.</p>";
                        exit ();
                        }

                    
?>                
                            
                </select>
            </td>
        </tr>
        <tr>
            <td>A2 </td>
            <td><select name="k2">

                    <?
                    $result12
mysql_query ("SELECT title,k FROM k_k2 ORDER BY id",$db);

                    if (!
$result12)
                        {
                        echo 
"<p>Запрос на выборку данных из базы не прошел</p> ";
                        exit (
mysql_error());
                        }

                    if (
mysql_num_rows ($result12) > 0)
                        {
                        
$myrow12mysql_fetch_array ($result12);

                        do

                            {
                            
printf ("<option value='%s'>%s</option>"$myrow12["k"], $myrow12["title"]);
                            }

                        while (
$myrow12mysql_fetch_array ($result12));
                        }

                    else
                        {
                        echo 
"<p>Информация по запросу не может быть извлечена. В таблице нет записей.</p>";
                        exit ();
                        }

                    
?>
                </select>
            </td>
        </tr>
        <tr>
            <td>A3 </td>
            <td><select name="k3">
                    <?
                    $result13
mysql_query ("SELECT title,k FROM k_k3 ORDER BY id",$db);

                    if (!
$result13)
                        {
                        echo 
"<p>Запрос на выборку данных из базы не прошел</p> ";
                        exit (
mysql_error());
                        }

                    if (
mysql_num_rows ($result13) > 0)
                        {
                        
$myrow13mysql_fetch_array ($result13);

                        do

                            {
                            
printf ("<option value='%s'>%s</option>"$myrow13["k"], $myrow13["title"]);
                            }

                        while (
$myrow13mysql_fetch_array ($result13));
                        }

                    else
                        {
                        echo 
"<p>Информация по запросу не может быть извлечена. В таблице нет записей.</p>";
                        exit ();
                        }

                    
?>
                </select>
            </td>
        </tr>
        <tr>
            <td>A4</td>
            <td><select name="k4">
                    <?
                    $result14
mysql_query ("SELECT title,k FROM k_k4 ORDER BY id",$db);

                    if (!
$result14)
                        {
                        echo 
"<p>Запрос на выборку данных из базы не прошел.</p> ";
                        exit (
mysql_error());
                        }

                    if (
mysql_num_rows ($result14) > 0)
                        {
                        
$myrow14mysql_fetch_array ($result14);

                        do

                            {
                            
printf ("<option value='%s'>%s</option>"$myrow14["k"], $myrow14["title"]);
                            }

                        while (
$myrow14mysql_fetch_array ($result14));
                        }

                    else
                        {
                        echo 
"<p>Информация по запросу не может быть извлечена. В таблице нет записей.</p>";
                        exit ();
                        }

                    
?>
                </select>
            </td>
        </tr>
        <tr>
            <td>A5</td>
            <td><select name="k5">
                    <?
                    $result15
mysql_query ("SELECT title,k FROM k_k5 ORDER BY id",$db);

                    if (!
$result15)
                        {
                        echo 
"<p>Запрос на выборку данных из базы не прошел.</p> ";
                        exit (
mysql_error());
                        }

                    if (
mysql_num_rows ($result15) > 0)
                        {
                        
$myrow15mysql_fetch_array ($result15);

                        do

                            {
                            
printf ("<option value='%s'>%s</option>"$myrow15["k"], $myrow15["title"]);
                            }

                        while (
$myrow15mysql_fetch_array ($result15));
                        }

                    else
                        {
                        echo 
"<p>Информация по запросу не может быть извлечена. В таблице нет записей.</p>";
                        exit ();
                        }

                    
?>
                </select>
            </td>
        </tr>
    </table>

    

</FORM>    [/CODE]
romeno вне форума Ответить с цитированием
Старый 21.11.2011, 14:37   #4
romeno
 
Регистрация: 21.11.2011
Сообщений: 6
По умолчанию

Цитата:
Сообщение от Zer0 Посмотреть сообщение
javaScript + обработка событий onSelect, а там уже любую логику поведения, какую Вам нужно
А на PHP никак? Просто с javaScript совсем не знаком
romeno вне форума Ответить с цитированием
Старый 21.11.2011, 14:39   #5
Zer0
Форумчанин
 
Аватар для Zer0
 
Регистрация: 13.12.2007
Сообщений: 788
По умолчанию

нет, на PHP Вы динамическую обработку страницы на стороне клиента не сделаете
благодарность - сюда (не забываем писать от кого)
Zer0 вне форума Ответить с цитированием
Старый 21.11.2011, 14:46   #6
romeno
 
Регистрация: 21.11.2011
Сообщений: 6
По умолчанию

Цитата:
Сообщение от Zer0 Посмотреть сообщение
нет, на PHP Вы динамическую обработку страницы на стороне клиента не сделаете
А можно поподробней о реализации на js, или ткните может где обсуждалась подобная тема. Мне поиск не помог.

Последний раз редактировалось romeno; 21.11.2011 в 14:54.
romeno вне форума Ответить с цитированием
Старый 21.11.2011, 14:55   #7
Zer0
Форумчанин
 
Аватар для Zer0
 
Регистрация: 13.12.2007
Сообщений: 788
По умолчанию

примеры если найду - отпишу
в целом - просто поищите как работать с onSelect, как работать с элементами формы через js и в целом то больше не надо ничего
благодарность - сюда (не забываем писать от кого)
Zer0 вне форума Ответить с цитированием
Старый 21.11.2011, 15:38   #8
romeno
 
Регистрация: 21.11.2011
Сообщений: 6
По умолчанию

Спасибо, буду пробовать
romeno вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как перенести елементы c первой html страницы в другую? jetei PHP 2 09.09.2011 22:32
как можно оздать панель инструментов, на которой реализовать возможность выбора гарнитуры шрифта, для выб Лелич Компоненты Delphi 2 17.02.2011 10:58
Фильтрация нескольких таблиц одновременно на одном листе при заданных условиях KNatalia Microsoft Office Excel 11 08.11.2009 21:47
Как реализовать форму с в виде объямного шара? Mixasik Общие вопросы Delphi 12 02.09.2009 06:51
Сумма при заданных условиях + Ранг Acro Microsoft Office Excel 2 14.04.2009 00:03