Форум программистов, компьютерный форум, киберфорум
Наши страницы

PHP для начинающих

Войти
Регистрация
Восстановить пароль
 
USERRRRR
0 / 0 / 0
Регистрация: 19.06.2015
Сообщений: 13
#1

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

19.06.2015, 17:21. Просмотров 1147. Ответов 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 передать значение (PHP):

не записывается значение radiobutton кроме первой radiobutton - PHP
На страницу из БД выводится вопросы и четыре ответа к вопросам(radiobutton-ы). Т.е. Страница.php Вопрос? radiobutton1 name=o...

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

Передать значение в value - PHP
Здравствуйте. Как передать значение $_SERVER в value? &lt;input type=&quot;hidden&quot; name=&quot;referer&quot; value=&quot;&quot; &gt; Пробовал так, вроде не правильно( ...

Передать значение в input - PHP
Здравствуйте форумчане! У меня проблемка с input, Ладно сразу к делу. 1. Есть 2 таблицы 1) user - id_u, login, pass, ...

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

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

8
tolimadokara
745 / 411 / 62
Регистрация: 24.10.2012
Сообщений: 3,017
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 / 62
Регистрация: 24.10.2012
Сообщений: 3,017
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 / 40
Регистрация: 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 / 62
Регистрация: 24.10.2012
Сообщений: 3,017
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 / 40
Регистрация: 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 / 62
Регистрация: 24.10.2012
Сообщений: 3,017
22.06.2015, 14:53 #9
Цитата Сообщение от Leshak
Соль то вон в чем. Где форма, а где значения
Действительно. Вы внимательны.

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

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

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

Не по теме:

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

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

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

Передать значение поля - PHP
Доброго времени суток! Есть у меня такое поле ввода: &lt;input type=&quot;text&quot; name=&quot;quantity- &lt;?php echo $row; ?&gt;&quot; size=&quot;2&quot;...

Передать значение переменной - PHP
Здравствуйте. Выводится товар из базы данных название; описание ; где произведен; цена На против каждого товара выставляется...

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


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

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

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