Форум программистов, компьютерный форум, киберфорум
Наши страницы
PHP для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
USERRRRR
0 / 0 / 0
Регистрация: 19.06.2015
Сообщений: 13
#1

Radiobutton передать значение

19.06.2015, 17:21. Просмотров 1219. Ответов 8
Метки нет (Все метки)

Есть проект для генерации поля в судоку. генерирует. потом накладывает маску, скрывая рандомные числа. Нужно сделать так что бы были уровни сложности по радиокнопке. не могу допетрить как передавать значения после выбора уровня. То есть выбрал ЛЕГКИЙ уровень и должно скрывать 15 чисел.
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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
function hide_fields()
    {
        global $grid;
        if (isset($POST['difficult'])) 
        {
                
            switch($POST['difficult'])
            {
                case '0':
                    $difficult_level = 15;
                    break;
            
                case '1':
                    $difficult_level = 45;
                    break;
            
                case '2':
                    $difficult_level = 70;
                    break;
            }
        }
        else
        {
            
            //$difficult_level = 42;
        }
        
        for($i = 0; $i < $difficult_level; $i++)
        {
            $a = rand(0,8);
            $b = rand(0,8);
            $grid[$a][$b] = ' ';
        }
 
        return;
    }
    
    function generate_random_numbers()
    {
        global $grid;
 
        for($i = 0; $i < 1; $i++)
        {
            $a = rand(0,8);
            $b = rand(0,8);
            $grid[$a][$b] = rand(1,9);
        }
 
        return;
    }
    
    function main()
    {
        global $grid;
 
        for ($i = 0; $i < 9; $i++)
        {
            for ($j = 0; $j < 9; $j++)
            {
                $grid[$i][$j] = 0;
            }
        }
        generate_random_numbers();
        init_generate();
 
        return;
    }
    
    if($done == "true")
    {
        hide_fields();
        
            echo "<center>";
            echo "<div style='background-image: url(background.png);  width: 100%; height: 100%;'>";
            $time2 = (microtime() - $time1);
            echo "<font face='comic sans' size='6'>Создано за $time2 мс</font>";
            echo "<center>";
            echo "<table><tr><td style='width: 70%'>";
            echo "<table rows=9 cols=9 cellspacing=10 style='font-size:24;'>";
            echo "<tr>";
            
            for($i = 0; $i <= 9; $i++)
            {
                if($i!=0)
                    echo "<th>$i</th>";
                else
                    echo "<th>&nbsp;</th>";
            }
            echo "</tr>";
 
            for($i = 0; $i < 9; $i++)
            {
                $k = $i + 1;
                echo "<tr>";
                echo "<th>$k</th>";
                for($j = 0; $j < 9; $j++)
                {
                    echo "<td>";
                    echo "<div style='background-color: white'>";
                    echo $grid[$i][$j];
                    echo " &nbsp;&nbsp;&nbsp;";
                    echo "</div>";
                    echo "</td>";
                }
                echo "</tr>";
            }
            echo "</table>";
            echo "</td>";
            echo "<td style='font-size:18; width: 30%'>";
            
            echo "<b>Уровень сложности :</b>";
            
                echo" <p><input name='difficult' type='radio' value=0> Легкий</p>";         
                echo" <p><input name='difficult' type='radio' value=1> Средний</p>";
                echo" <p><input name='difficult' type='radio' value=2> Тяжёлый</p>";
                
            echo "</td></tr></table>";
            echo "</center>";
            
            echo "<center>";
            echo "</br>";
            
            echo '<form action="SudokuGenerator.php" name="myform" style="padding:0;margin:0;">'; 
            echo "<input type='submit' name='generate_sudoku' value='Создать другое' style='width:400; height: 50; font-size:24'/>";
            echo "</form>";
        
            echo '<form action="index.php" name="myform" style="padding:0;margin:0;">'; 
            echo "<input type='submit' name='in_menu' value='В меню' style='width:400; height: 50; font-size:24'/>";
            echo "</form>";
            
            echo "</center>";   
            echo "</div>";
            echo "</center>";
    }
    echo "</div></body></font></html>";
?>

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.06.2015, 17:21
Ответы с готовыми решениями:

не записывается значение radiobutton кроме первой radiobutton
На страницу из БД выводится вопросы и четыре ответа к вопросам(radiobutton-ы)....

Как передать данные radiobutton ссылке, которая будет выполнять действие?
&lt;input type=&quot;radio&quot; name=&quot;id&quot; value='.($managers-&gt;id).' /&gt; &lt;li&gt;&lt;a rel=&quot;mode&quot;...

Передать значение в value
Здравствуйте. Как передать значение $_SERVER в value? &lt;input type=&quot;hidden&quot;...

Передать значение в бд по ссылке
Необходимо сделать так чтобы при нажатии на ссылку &quot;Выполнить это задание &quot; в...

Передать значение поля
Доброго времени суток! Есть у меня такое поле ввода: &lt;input type=&quot;text&quot;...

8
tolimadokara
745 / 411 / 91
Регистрация: 24.10.2012
Сообщений: 3,022
19.06.2015, 18:57 #2
если не ошибаюсь, то через isset

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?php
 
if( isset($_POST['low_difficult']) ) {
 
    $difficult_level = 0;
 
} else if ( isset($_POST['medium_difficult']) ) {
    
    $difficult_level = 1;
 
} else if ( isset($_POST['high_difficult']) ) {
    
    $difficult_level = 2;
 
} else {
    
    $difficult_level = 3;
}
 
#...
 
?>
просто если радио-баттон выбран то он передан в скрипт. если не выбран то его нет в скрипте.
1
USERRRRR
0 / 0 / 0
Регистрация: 19.06.2015
Сообщений: 13
19.06.2015, 19:11  [ТС] #3
Работает только по третьему ключу, не понимаю я чего то
0
tolimadokara
745 / 411 / 91
Регистрация: 24.10.2012
Сообщений: 3,022
19.06.2015, 19:12 #4
нет. что-то напутал.

PHPHTML
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
<input type="radio" name="difficult_level" value="low" /> Легкая игра
<input type="radio" name="difficult_level" value="medium" /> Средняя игра
<input type="radio" name="difficult_level" value="high" /> Сложная игра
<input type="radio" name="difficult_level" value="hard" /> Очень сложная игра
 
<?php
 
// Выбрана опция сложности?
if( !isset($_POST['difficult_level']) ) {
 
    # Нет. Тогда по умолчанию самая простая игра.
    $difficult_level = 0;
 
} else {
    
    # Выбрана опция.
    # Выборка.
    
    switch( $_POST['difficult_level'] ) {
        
        case 'low':
            
            $difficult_level = 0;
        
        case 'medium':
            
            $difficult_level = 1;
        
        case 'high':
            
            $difficult_level = 2;
        
        default:
            # Hard core level.
            # Нереально сложная игра.
            # Это тоже можно добавить в игру.
            $difficult_level = 3;
    }
}
 
?>
1
USERRRRR
0 / 0 / 0
Регистрация: 19.06.2015
Сообщений: 13
19.06.2015, 19:25  [ТС] #5
нет. все равно по третьему ключу
0
Leshak
259 / 235 / 160
Регистрация: 10.12.2011
Сообщений: 513
20.06.2015, 12:00 #6
Давайте на примере:

1) Попробуйте выбрать любой checkbox и нажать кнопку OK. Результат увидите сами.
2) Закомментируйте первый блок input-ов, и разкомментируйте второй блок.
3) Попробуйте отправить значение.
4) Пересмотрите внимательно ваш код.
5) Ждем ответа

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
<?php
// первый блок
echo" <p><input name='difficult' type='radio' value=0> Легкий</p>";         
echo" <p><input name='difficult' type='radio' value=1> Средний</p>";
echo" <p><input name='difficult' type='radio' value=2> Тяжёлый</p>";
?>
 
<form action="" method="POST">
    <?php
       // второй блок
       /* 
         echo" <p><input name='difficult' type='radio' value=Легкий> Легкий</p>";         
         echo" <p><input name='difficult' type='radio' value=Средний> Средний</p>";
         echo" <p><input name='difficult' type='radio' value=Тяжёлый> Тяжёлый</p>";
       */
    ?>
    <input type='submit' value='OK'>
</form>
 
 
<?php
echo (!isset($_POST['difficult']))? 'Хм, похоже надо что-то внести в форму отправки' : 'значение сheckbox: '.$_POST['difficult'];         
 
?>
1
tolimadokara
745 / 411 / 91
Регистрация: 24.10.2012
Сообщений: 3,022
22.06.2015, 13:50 #7
Вот протестированные форма и обработчик. Проверял. Работает.

test2.html
HTML5
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
<form action="proc.php" method="post">
    <table>
        <tr>
            <td align="right">Очень легко</td>
            <td><input type="radio" name="difficult_level" value="0" checked="checked" /></td>
        </tr>
        <tr>
            <td align="right">Легко</td>
            <td><input type="radio" name="difficult_level" value="1" /></td>
        </tr>
        <tr>
            <td align="right">Нормально</td>
            <td><input type="radio" name="difficult_level" value="2" /></td>
        </tr>
        <tr>
            <td align="right">Трудно</td>
            <td><input type="radio" name="difficult_level" value="3" /></td>
        </tr>
        <tr>
            <td align="right">Очень трудно</td>
            <td><input type="radio" name="difficult_level" value="4" /></td>
        </tr>
    </table>
    <input type="submit" value="Отправить" />
</form>


porc.php
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
<?php
 
# Ступенька сложности.
$difficult_base = 5;
 
# Значение сложности передано?
if( isset($_POST['difficult_level']) ) {
    
    # Проверка корректности данных формы.
    if( !preg_match('/[0|1|2|3|4]/', $_POST['difficult_level']) ) {
        
        exit();
    }
    
    # Да. Выборка значения.
    switch ( $_POST['difficult_level'] ) {
        case '1':
            $difficult_multiplier = 2;
            break;
        case '2':
            $difficult_multiplier = 3;
            break;
        case '3':
            $difficult_multiplier = 4;
            break;
        case '4':
            $difficult_multiplier = 5;
            break;
        default:
            $difficult_multiplier = 1;
    }
} else {
    
    $difficult_multiplier = 1;
}
 
$difficult_base *= $difficult_multiplier;
 
echo "Уровень сложности $difficult_base"; ?>
2
Leshak
259 / 235 / 160
Регистрация: 10.12.2011
Сообщений: 513
22.06.2015, 14:19 #8
tolimadokara, я то вам верю

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
echo "<b>Уровень сложности :</b>";
            
                echo" <p><input name='difficult' type='radio' value=0> Легкий</p>";         
                echo" <p><input name='difficult' type='radio' value=1> Средний</p>";
                echo" <p><input name='difficult' type='radio' value=2> Тяжёлый</p>";
                
            echo "</td></tr></table>";
            echo "</center>";
            
            echo "<center>";
            echo "</br>";
            
            echo '<form action="SudokuGenerator.php" name="myform" style="padding:0;margin:0;">'; 
            echo "<input type='submit' name='generate_sudoku' value='Создать другое' style='width:400; height: 50; font-size:24'/>";
            echo "</form>";
        
            echo '<form action="index.php" name="myform" style="padding:0;margin:0;">'; 
            echo "<input type='submit' name='in_menu' value='В меню' style='width:400; height: 50; font-size:24'/>";
            echo "</form>";
Соль то вон в чем. Где форма, а где значения
1
tolimadokara
745 / 411 / 91
Регистрация: 24.10.2012
Сообщений: 3,022
22.06.2015, 14:53 #9
Цитата Сообщение от Leshak
Соль то вон в чем. Где форма, а где значения
Действительно. Вы внимательны.

Пускай USERRRRR сам разбирается. Лень разбираться в его коде. Вон ^ сколько разных решений выложили.

USERRRRR, Вам надо радио батоны поместить в форму! Тогда может быть заработает.

Добавлено через 13 минут

Не по теме:

Цитата Сообщение от tolimadokara
Пускай USERRRRR сам разбирается.
Извините USERRRRR что я так сказал. :) Знаете как тяжело вникать в исходный код? Особенно если он написан без старательности.

1
22.06.2015, 14:53
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.06.2015, 14:53

Как передать значение
Как передать значение получив его из одного поля, но передать в 2 переменные? И...

Передать значение из input
Есть форма: &lt;form id=&quot;authf&quot; action=&quot;&quot;&gt; Введите имя &lt;input type=&quot;text&quot;...

Передать значение переменной
Здравствуйте, имеется код foreach ($explode_new as $k =&gt; $stuff_image){...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru