Все технические форумы на одном сайте Удобный поиск информации с популярных форумов в одном месте
Вопрос: Проверка поля Login || Password

Код PHP
1
2
elseif (!preg_match("/\A(\w){6,20}\Z/", $_POST['password'])) {
echo '<br><font color="red"><img border="0" src="error.gif" alt="Пароль слишком короткий!">Пароль слишком короткий! Пароль должен быть не менее 6 символов! </font>';
Объясните или киньте ссылку где можно почитать про знаки внутри функции(что они обозначают и за что отвечают),например я хочу сделать проверку поля логин, в котором первая буква всегда должна быть заглавной.
Ответ: Это регулярное выражение.



Сообщение от Old_Panda
я хочу сделать проверку поля логин, в котором первая буква всегда должна быть заглавной.
/^[A-Z]/
Вопрос: MaskedTextBox не проходит проверку на пустоту

Приветствую всех. Это опять я. Я же не знал, что в программировании столько всяких нюансов и проблем.
Так вот. На форме есть maskedTextBox с маской для времени __:__ . Нужно чтобы при условии его пустоты происходило действие. Но проблема в том, что он не проходит проверку на пустоту.
Я делал вот так:
C#
1
2
3
4
5
if (maskedTextBox_время.Text == null)
            {
                maskedTextBox_время.Text = "0410";
                MessageBox.Show("jjjff"); //для проверки
            }
И вот так:
C#
1
2
3
4
if (maskedTextBox_время.Text == String.Empty)
            {
               MessageBox.Show("ололо");
            }
и даже так:
C#
1
  if (maskedTextBox_время.Text == "" )
Но при этом всём база ругается на то, что индексированное поле (формат времени) пустое.
Если же поставить условие, что поле НЕ пустое, то MessageBox выводят свои сообщения, что нелогично. Если оно не пустое, то почему база ругается на пустоту.
Сижу как котенок из мультфильма кубики собираю: и так не получается, и так ничего не получается.
Ответ: Невероятно! Заработало. Вот как обычный человек может до такого додуматься? Я пробовал такой вариант, но без пробелов.
Даценд, Вы мне уже столько раз помогли, что не знаю чем и благодарить.
Вопрос: Проверка поля на пустоту

Добрый день

Есть поле типа Справочник. Подскажите, как написать на С# условие: Если это поле не пустое, то...
Делала так:

C#
1
2
3
4
5
6
7
8
9
10
11
12
if( Page.ChangeRequestEdit.Value != null)
 
 
    {
                     Page.BaseMessagePanel.AddMessage(Warning, "нужно заполнить еще и другое поле", MessageType.Warning);
                     return false;
                     
    }
else
                  {
                      return true; 
                  }
компилирует - без ошибок, но в итоге: выводит сообщение всегда, не смотря на проверку поля ChangeRequestEdit. Подскажите, пжста, что делаю не так?
Ответ: МТатьяна, ну значит условие должно быть smth == null вместо smth != null
Вопрос: Делай проверку на пустоту переменной пока не настанет этот момент

У меня неизвестно количество переменных - $_POST["input_title_".$i]

$i - может быть от 1 до несколько сот

необходимо как то сделать - так чтобы шла проверка на пустоту

и если переменная пустая (подправить код - если есть ошибки) то хочу сделать так:

PHP
1
2
3
4
5
6
7
8
9
10
11
if (empty($_POST["input_title_".$i])) {
    echo '$_POST["input_title_".$i] или 0, или пусто, или вообще не определена';
}
 
else
 
{
 
echo $_POST["input_title_".$i]
 
}
Ответ: adelbaew2, это не верная конструкция тк. сложно будет проверять
PHP
1
$_POST["input_title_".$i]
добавляйте инпутам группу. Например:
HTML5
1
<input type="text" name="input_title[]">
Потом чистим массив input_title и выводим результат
PHP
1
2
3
4
5
$input_title = array_diff($_POST['input_title'], array("")); // Убираем пустые пары ключ=>значение
foreach ($input_title as $key => $value)
{
  echo "Ключ \"$key\" имеет значение \"$value\""; // Отображаем результат
}
Вопрос: Проверка полей на php

Долго искал форму с возможностью вложения, то не отправляли фай то еще что то, Нашел простую форму работает хорошо.
Только вот проверки полей на php нет. Можно конечно ява скрипт прикрутить но хотелось бы все таки на 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
40
41
42
43
44
45
46
47
48
49
50
51
<?php
if (isset ($_POST['email'])) {
  $to = "mail@yandex.ru";
  $from = $_POST['email'];
  $subject = "Заполнена контактная форма с ".$_SERVER['HTTP_REFERER'];
  $message = "Имя: ".$_POST['name']."\nEmail: ".$from."\nIP: ".$_SERVER['REMOTE_ADDR']."\nСообщение: ".$_POST['message'];
  $boundary = md5(date('r', time()));
  $filesize = '';
  $headers = "MIME-Version: 1.0\r\n";
  $headers .= "From: " . $from . "\r\n";
  $headers .= "Reply-To: " . $from . "\r\n";
  $headers .= "Content-Type: multipart/mixed; boundary=\"$boundary\"\r\n";
  $message="
Content-Type: multipart/mixed; boundary=\"$boundary\"
 
--$boundary
Content-Type: text/plain; charset=\"utf-8\"
Content-Transfer-Encoding: 7bit
 
$message";
  for($i=0;$i<count($_FILES['fileFF']['name']);$i++) {
      if(is_uploaded_file($_FILES['fileFF']['tmp_name'][$i])) {
         $attachment = chunk_split(base64_encode(file_get_contents($_FILES['fileFF']['tmp_name'][$i])));
         $filename = $_FILES['fileFF']['name'][$i];
         $filetype = $_FILES['fileFF']['type'][$i];
         $filesize += $_FILES['fileFF']['size'][$i];
         $message.="
 
--$boundary
Content-Type: \"$filetype\"; name=\"$filename\"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename=\"$filename\"
 
$attachment";
     }
   }
   $message.="
--$boundary--";
 
 
  if ($filesize < 10000000) {
    mail($to, $subject, $message, $headers);
    $output = '<script>alert("Ваше сообщение получено, спасибо!");</script>';
  } else {
    $output = '<script>alert("Извините, письмо не отправлено. Размер всех файлов превышает 10 МБ.");</script>';
  }
}
 
 
 
?>
Ответ: Еще один косяк заметил, при прикрепление файла больше положенного не выводится сообщение об ошибке, а выводится "сообщение отправлено"
Кто нибудь может дать ссылку на нормальную форму, бес косяков и с капчей, атачем, валидацией
Вопрос: как в yii2 реализовать проверку полей?



интересует такой способ (выделил красным на скрине), это нужно проверку полей делать? или какой то способ уже есть готовый
 
Ответ:
, это уже ваша, конкретная задача. С чего бы она была решена фреймворком? Включаем голову и программируем
 
Вопрос: Проверка полей формы на заполненность, сверка паролей при заполнении формы

Решил замутить новую тему, а не продолжать старую, хотя это и следующий шаг в работе с формами ( предыдущая здесь )
По поиску пробежался, но свое не нашел, поэтому и пишу.
Есть форма регистрации для отправки данных пользователя на сервер, находящаяся в файле regprivate.php
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
<form method="post" action="signup.php" >   
<h2><center>Учетные данные пользователя ( частного лица )</center></h2><br /><br />
<label>Имя учетной записи:</label> 
<input type="text" name="login" size="25" required autofocus><br /><br />
<label>Пароль:</label> 
<input type="password" name="pass1" size="25" required><br /><br />
<label>Пароль еще раз:</label> 
<input type="password" name="pass2" size="25" required><br /><br />
<h2><center>Персональная информация</center></h2><br /><br />
<label>Имя<span class="star">*</span>:</label> 
<input type="text" name="first_name" size="25" required><br /><br />
<label>Фамилия<span class="star">*</span>:</label> 
<input type="text" name="last_name" size="25" required><br /><br />
<label>Личный код<span class="star">*</span>:</label>  
<input type="text" name="code" size="25" required><br /><br />
<label>Адрес электронной почты<span class="star">*</span>:</label>
<input type="email" name="email" size="25" required><br /><br />
<label>Телефон +(372)<span class="star">*</span>:</label> 
<input type="text" name="phone" size="25" required><br /><br />
<input type="checkbox" name="checkme" id="agree" />&emsp; Я прочитал(а) и полностью согласен(а) с <a href="agreement.php" target="_blank">условиями пользовательского соглашения.</a><br /><br />
            
<input type="submit" name="regbut" id="register" value="Зарегистрироваться" />
            
</form>
Обработчик формы находится в файле signup.php
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
    if(isset($_POST['regbut']))
{   
    $login = strip_tags(trim($_POST['login']));
    $pass1 = $_POST['pass1'];
    $pass2 = $_POST['pass2'];
    $first_name = strip_tags(trim($_POST['first_name']));
    $last_name = strip_tags(trim($_POST['last_name']));
    $code = strip_tags(trim($_POST['code']));
    $email = strip_tags(trim($_POST['email']));
    $phone = strip_tags(trim($_POST['phone']));
    
    mysqli_query($link, "
                     INSERT INTO regprivate (login, pass1, pass2, first_name, last_name, code, email, phone) VALUES ('$login', '$pass1', '$pass2', '$first_name', '$last_name', '$code', '$email', '$phone') 
    ")  or die(mysqli_error($link));
    mysqli_close($link);
          
}
Тут пока все нормально. Заполняешь поля формы и данных в них отсылаются в БД. Что теперь нужно?

Нужно осуществить проверку на заполнение полей формы. Для этого в одном из уроков на youtube нашел вот такой вариант проверки:
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
                    
    $data = $_POST; // всем переменным, которые возвращаются нам по $_POST,  присваивается переменная  $data    
    if( isset($data['regbut']));
    // здесь регистрируемся
    $errors = array();
    if( trim($data['login']) == '')
    {       
            $errors[] = 'Введите логин';
    }
    if( trim($data['email']) == '')
    {       
            $errors[] = 'Введите email';
    }
    if( $data['pass1'] == '')
    {       
            $errors[] = 'Введите пароль';
    }
    if( $data['pass1'] != $data['pass2'])
    {       
            $errors[] = 'Повторный пароль введен неверно.';
    }
    
    if( empty($errors) )
    {
            // все хорошо, регистрируемся
    } else
    {
      echo '<div style="color: red;">' .array_shift($errors).'</div>';
    }
Вопросы: 1) В какое место необходимо инкорпорировать данную проверку, чтобы все корректно работало?
2) Можно ли и, если можно, то как, применить здесь технологию ajacks, чтобы предупреждения об ошибках высвечивались без перезагрузки страницы?
PS. Деревянному человечку желательно все поподробнее
Ответ:
Сообщение от Pinnokio
Я только примериваюсь, куда бы ее воткнуть!
И я ответил на этот вопрос.
Сообщение от Pinnokio
В упомянутом выше уроке с youtube форма и проверка - в одном файле
Это плохо. Логику и представления принято разделять. Не рекомендую смотреть этот урок, лучше почитайте про MVC.
Сообщение от Pinnokio
С ajax см. PS.
См. последнее предложение в моем прошлом посте.
Сообщение от Pinnokio
Да, и еще вот вдогонку один вопрос. Если в input в атрибутах стоит required, то какой смысл производить проверку на заполненность поля? Никакого, ведь так? Получается, что мне надо произвести только проверку на сверку паролей?
Нельзя доверять данным пришедшим на сервер извне, их могут подменить. Поэтому на стороне сервера должны быть все необходимые проверки.
Вопрос: Проверка на заполнение полей

как сделать проверку на заполнение полей при нажатии на кнопку "Применить" на навигаторе (DBNavigator2).
в частности меня интересует проверка поля номера договора (DBEdit3)
БД Access
Ответ:
Сообщение от dumkast
как сделать проверку на заполнение полей при нажатии на кнопку "Применить" на навигаторе (DBNavigator2).
в частности меня интересует проверка поля номера договора (DBEdit3)
дайте примерный код
Вопрос: Насколько правильна такая проверка полей в форме?

Добрый день,

Сделал форму обратной связи, поля:
- имя
- имейл
- сообщение

после нажатия на Отправить, перед тем как перейти на страницу (урл) где идёт непосредственно Отправка на сервер , идёт проверка Яваскриптом, на правильность формата имейла:
if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/.test(email))

если имейл введён не верно, то вылетает окно Яваскрипта с просьбой ввести имейл правильно.

если имейл введён верно, то идёт переход на страницу <form action=send.php …..
где идёт проверка имейла на нехорошие символы и после запись сообщения в файл.

Насколько верный такой подход? Потому что зайдя на сайт с Андройда, при Отправке сообщения специально ввёл не верный имейл, вылетело окно Яваскрипта с предупреждением что надо ввести верный формат, но случайно нажал на «Запретить вывод дополнительных окон»,
и теперь при не правильном вводе имейла, никакого предупреждения на Яваскрипте естественно мы не получаем. Поэтому подумал, а верный ли этот способ, ведь так можно упустить желающего написать сообщение.

Почему не делаю проверку в файле субмита формы form action=send.php ….> ,без всяких яваскриптов.
Потому что на этом файле будет висеть Цель Метрики, и в случае удачной отправки сообщения, мы получим что Цель достигнута. Но если организовать проверку в файле send.php, то Цель будет достигнута даже тогда, когда имейл введён не верно. Поэтому на send.php мы должны перейти только если всё введено верно.

Как лучше тогда это сделать?
Ответ:
хотелось бы никуда не посылать
а всё делать на одной странице, ну форму - ок, можно послать на саму себя для проверки данных полей, но в случаи с Целью как тогда подсунуть этот ReachGoal, как-то не ясно.

на Аяксе вроде делают, хотя поймёт ли так Метрика Цель, как-то не ясно.
Вопрос: Игра "Жизнь". Метод проверки поля

Доброго времени суток. Начинаю программировать Windows приложения и не во всем еще разобрался, заранее спасибо за помощь.

Задача: построить игру "Жизнь";

Привила игры: Жизнь − многоклеточное сообщество,
населяющее пустыню. Под пустыней понимается квадратная решетка, в каждую ячейку которой вмещается одна клетка Жизни. Мерой течения времени служит смена поколений Жизни, приносящая в колонию клеток смерть и рождение. Если у клетки меньше двух соседей (из восьми возможных), она погибает от одиночества. Если количество соседей больше трех, клетка погибает от тесноты. Если рядом с пустой ячейкой оказывается ровно три клетки Жизни, то в этой ячейке рождается новая клетка Жизни. Исходными данными для программы служит начальное расположение клеток. В качестве результата нужно получить вид последовательности поколений колонии;

Что сделал: Я создал две формы, 1ая отвечает за стартовое меню, 2ая за игру. В первой форме находится: заставка, название игры, две кнопки(перехода во вторую форму и выход); во второй форме находится: 36 кнопок (Button, согласен, возможно это не лучшее решение, но пока что новечек в этом) эти кнопки отвечают за игровое поле, при нажатие на соответствующую кнопки меняю ее цвет(чтобы было понятно, что там появилась "живая клетка") и заполняю двумерный массив (чтобы в дальнейшем работать с ним) и в этой форме присутствует фон.

То что хочу сделать: задумка такая, я делаю это поле из 36 кнопок, при нажатие на соответствующую кнопку заполняю двумерный массив. Далее хочу создать такой метод, в котором будет идти проверка этого массива, и при выполнении определенных условий (как в перечне, правила игры) менять соответствующие значение в массиве (mas[i][j]=1 - живая клетка, mas[i][j]=0 - клетка пустая/мертвая), и после этого менять цвет у соответствующих кнопках на игровом поле(зеленый-живая, изначальный или любой другой - клетка пустая/мертвая).

В чем вопрос: когда создам этот метод в классе отвечающий за вторую форму (игровое поле), то как потом сделать, чтобы этот метод работал циклично, чтобы при нажатие на кнопки, начинал проверять все условия в массиве и менять цвет кнопок в игровом поле? И может лучше сделать данный метод, не методом, а отдельной функцией работающей с этим массив, но тогда смогу ли менять цвет кнопок в игровом поле?

Листинг программы, то что сделал: (лстинг не полный, только основное, т.к. получилась слишком много слов)

GameZon.h-форма отвечающая за игровое поле:

C++
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
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
#pragma endregion
        
// Программа выводит в форму растровое изображение из графического файла (ФОНОВОЕ ИЗОБРАЖЕНИЕ)
    protected: virtual void OnPaint( PaintEventArgs^ e ) override{
                   {
Image ^ Рисунок = gcnew Bitmap("D:\\ВЕР работы\\Основы информатики\\2 курс\\Лабораторная №8(визуальное программирование, формы)\\nastol.com.ua-62844.jpg");
// Вывод изображения в формy
e->Graphics->DrawImage(Рисунок,0,0);
// x=5, y=5 - это координаты левого верхнего угла рисунка
// в системе координат формы: ось x - вниз, ось y - вправо
}
               }
 
               //запродняем массив при нажатие на кнопки соответсвенно их местоположению
 
private: System::Void button91_Click(System::Object^  sender, System::EventArgs^  e) {
             this->button91->BackColor = BackColor.Green;  
             masF[0][0]=1;
         }
private: System::Void button92_Click(System::Object^  sender, System::EventArgs^  e) {
              this->button92->BackColor = BackColor.Green;
             masF[1][0]=1;
         }
private: System::Void button93_Click(System::Object^  sender, System::EventArgs^  e) {
         this->button93->BackColor = BackColor.Green;
             masF[2][0]=1;
         }
private: System::Void button94_Click(System::Object^  sender, System::EventArgs^  e) {
          this->button94->BackColor = BackColor.Green;
             masF[3][0]=1;
         }
private: System::Void button95_Click(System::Object^  sender, System::EventArgs^  e) {
         this->button95->BackColor = BackColor.Green;
             masF[4][0]=1;
         }
private: System::Void button96_Click(System::Object^  sender, System::EventArgs^  e) {
          this->button96->BackColor = BackColor.Green;
             masF[5][0]=1;
         }
private: System::Void button81_Click(System::Object^  sender, System::EventArgs^  e) {
         this->button81->BackColor = BackColor.Green;
             masF[0][1]=1;
         }
private: System::Void button82_Click(System::Object^  sender, System::EventArgs^  e) {
         this->button82->BackColor = BackColor.Green;
    masF[1][1]=1;
         }
private: System::Void button83_Click(System::Object^  sender, System::EventArgs^  e) {
         this->button83->BackColor = BackColor.Green;
     masF[2][1]=1;
         }
private: System::Void button84_Click(System::Object^  sender, System::EventArgs^  e) {
         this->button84->BackColor = BackColor.Green;
         masF[3][1]=1;
         }
private: System::Void button85_Click(System::Object^  sender, System::EventArgs^  e) {
         this->button85->BackColor = BackColor.Green;
             masF[4][1]=1;
         }
private: System::Void button86_Click(System::Object^  sender, System::EventArgs^  e) {
         this->button86->BackColor = BackColor.Green;
             masF[5][1]=1;
         }
private: System::Void button71_Click(System::Object^  sender, System::EventArgs^  e) {
         this->button71->BackColor = BackColor.Green;
             masF[0][2]=1;
         }
private: System::Void button72_Click(System::Object^  sender, System::EventArgs^  e) {
         this->button72->BackColor = BackColor.Green;
            masF[1][2]=1;
         }
private: System::Void button73_Click(System::Object^  sender, System::EventArgs^  e) {
         this->button73->BackColor = BackColor.Green;
            masF[2][2]=1;
         }
private: System::Void button74_Click(System::Object^  sender, System::EventArgs^  e) {
         this->button74->BackColor = BackColor.Green;
             masF[3][2]=1;
                 }
private: System::Void button75_Click(System::Object^  sender, System::EventArgs^  e) {
         this->button75->BackColor = BackColor.Green;
             masF[4][2]=1;
         }
private: System::Void button76_Click(System::Object^  sender, System::EventArgs^  e) {
         this->button76->BackColor = BackColor.Green;
            masF[5][2]=1;
         }
private: System::Void button61_Click(System::Object^  sender, System::EventArgs^  e) {
         this->button61->BackColor = BackColor.Green;
            masF[0][3]=1;
         }
private: System::Void button62_Click(System::Object^  sender, System::EventArgs^  e) {
         this->button62->BackColor = BackColor.Green;
             masF[1][3]=1;
         }
private: System::Void button63_Click(System::Object^  sender, System::EventArgs^  e) {
         this->button63->BackColor = BackColor.Green;
            masF[3][2]=1;
         }
private: System::Void button64_Click(System::Object^  sender, System::EventArgs^  e) {
         this->button64->BackColor = BackColor.Green;
             masF[3][3]=1;
         }
private: System::Void button65_Click(System::Object^  sender, System::EventArgs^  e) {
         this->button65->BackColor = BackColor.Green;
             masF[4][3]=1;
         }
private: System::Void button66_Click(System::Object^  sender, System::EventArgs^  e) {
         this->button66->BackColor = BackColor.Green;
             masF[5][3]=1;
         }
private: System::Void button51_Click(System::Object^  sender, System::EventArgs^  e) {
         this->button51->BackColor = BackColor.Green;
             masF[0][4]=1;
        }
private: System::Void button52_Click(System::Object^  sender, System::EventArgs^  e) {
         this->button52->BackColor = BackColor.Green;
             masF[1][4]=1;
         }
private: System::Void button53_Click(System::Object^  sender, System::EventArgs^  e) {
         this->button53->BackColor = BackColor.Green;
            masF[2][4]=1;
         }
private: System::Void button54_Click(System::Object^  sender, System::EventArgs^  e) {
         this->button54->BackColor = BackColor.Green;
            masF[3][4]=1;
         }
private: System::Void button55_Click(System::Object^  sender, System::EventArgs^  e) {
         this->button55->BackColor = BackColor.Green;
            masF[4][4]=1;
         }
private: System::Void button56_Click(System::Object^  sender, System::EventArgs^  e) {
         this->button56->BackColor = BackColor.Green;
             masF[5][4]=1;
         }
private: System::Void button41_Click(System::Object^  sender, System::EventArgs^  e) {
         this->button41->BackColor = BackColor.Green;
            masF[0][5]=1;
         }
private: System::Void button42_Click(System::Object^  sender, System::EventArgs^  e) {
         this->button42->BackColor = BackColor.Green;
             masF[1][5]=1;
         }
private: System::Void button43_Click(System::Object^  sender, System::EventArgs^  e) {
         this->button43->BackColor = BackColor.Green;
             masF[2][5]=1;
         }
private: System::Void button44_Click(System::Object^  sender, System::EventArgs^  e) {
         this->button44->BackColor = BackColor.Green;
            masF[3][5]=1;
         }
private: System::Void button45_Click(System::Object^  sender, System::EventArgs^  e) {
         this->button45->BackColor = BackColor.Green;
             masF[4][5]=1;
         }
private: System::Void button46_Click(System::Object^  sender, System::EventArgs^  e) {
         this->button46->BackColor = BackColor.Green;
            masF[5][5]=1;
         }
 
//////////////////////////////////////////////////////
 
          public: void Life(){//В данном методе проверяем все условия для жизни, смерти и появления клетки
                     for(int i=0, b1=1; i<6, b1<7; i++, b1++)//строка, номера кнопок
                      for(int j=0,b2=9; j<6, b2>=4; j++, b2--)//столбец
                      {///////////////////////////////
                          //отдельно проверяем крайние положения в массиве, чтобы не заходить за грани массива (4-угла и 4-боковых стороны)
                          if(i==0 && j==0)//проверяем угловое положение : левое верхнее
                            {
                                int k=0;
                                if(masF[i++][j]==1) k++;
                                if(masF[i++][j++]==1) k++;
                                if(masF[i][j++]==1) k++;
                                
                                if(k<2 || k>3){
                                    masF[i][j]==0;
                                    //this->button[b1,b2]->BackColor = BackColor.Red;
                                }
                                else if(k==3){
                                    masF[i][j]=1;
                                this->button91->BackColor = BackColor.Green;
                                }
                          }
 
                          if(i==1 && j!=5){//верзнее положение
                          int k=0;
                          if(masF[i--][j]==1) k++;
                          if(masF[i--][j--]==1) k++;
                          if(masF[i][j--]==1) k++;
                          if(masF[i++][j--]==1) k++;
                          if(masF[i++][j++]==1) k++;
 
                          if(k<2 || k>3){
                                    masF[i][j]==0;
                                    //this->button91->BackColor = BackColor.Red;
                                }
                            if(k==3){
                                    masF[i][j]=1;
                                //this->button91->BackColor = BackColor.Green;
                                }
                          }
 
 
 
                  }//////////////////////////////////////
                 }
 
    
private: System::Void button91(System::Object^  sender, System::EventArgs^  e) {
            if( masF[0][0]=1)  this->button91->BackColor = BackColor.Green;  
            else  this->button91->BackColor = BackColor.Black;
         }
};
}


GameZon.cpp:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include "GameZon.h"
#include <ctime>
 
using namespace System;
using namespace System::Windows::Forms;
using namespace MyForm1;
 
[STAThread]
int main_game(array<String^>^ arg){
    Application::EnableVisualStyles();
    Application::SetCompatibleTextRenderingDefault(false);
    
    for(int sec=0;;sec++){
        system("cls");
        GameZon g;
        g.Life();//
        _sleep(1);
    }
    
    Application::Run(gcnew GameZon());
return 0;
}

MyForm.h-стартовое меню:

C++
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
#pragma endregion
        // Программа выводит в форму растровое изображение из графического файла (ФОНОВОЕ ИЗОБРАЖЕННИЕ МЕНЮ)
    protected: virtual void OnPaint( PaintEventArgs^ e ) override{
                   {
MyForm::Text = "Главное меню";
this->Width=800;this->Height=500;
Image ^ Рисунок = gcnew Bitmap("C:\\Users\\Public\\Pictures\\Sample Pictures\\Desert.jpg");
// Вывод изображения в формy
e->Graphics->DrawImage(Рисунок,0,0);
// x=5, y=5 - это координаты левого верхнего угла рисунка
// в системе координат формы: ось x - вниз, ось y - вправо
}
               }
    private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) {
                 // из за этой конструкции пишет, что массив переопределен в GameZon!!!!!!!!!!!!!!!!!!!!
                 GameZon^ game = gcnew GameZon();
                    game->Show();
                    //mas1[0][0]=1;//проверка, что массив работает
             }
 
                private: System::Void button2_Click(System::Object^  sender, System::EventArgs^  e) {
                            Form^ m;
                            m->Close();
                         }
 
};
}
MyForm.cpp:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include "MyForm.h"
 
using namespace System;
using namespace System::Windows::Forms;
using namespace MyForm1;
 
[STAThread]
int main(array<String^>^ arg){
    Application::EnableVisualStyles();
    Application::SetCompatibleTextRenderingDefault(false);
 
    Application::Run(gcnew MyForm());
return 0;
}
Большое спасибо за внимание.
Ответ: Не вздумайте руками размещать 36 кнопок на форме) если вам завтра захочется сделать поле не 6х6 а 100х100, что тогда?

Делайте цикл по двумерному массиву нужной размерности (можно вынести в константы, можно считывать из неких полей), на каждой итерации создавайте объект Button, вешайте на него обработчик нажатия (будет скажем менять цвет), размещайте на форме по нужным координатам (рассчитывается как [строка массива * (ширина кнопки + расстояние между кнопками)], аналогично с высотой), сохраняйте ссылку на кнопку в массив. Таким образом у вас будет не массив bool'ов или int'ов, а массив объектов Button.

Обработчик нажатия делайте один, зачем их вам по количеству кнопок? Он же выполняет одну и ту же цель.. в обработчик события передается sender, это ссылка на объект, который вызвал событие (считай одну из кнопок). Приводите его к типу Button и меняете цвет.

Таким образом: 1 функция создания поля, 1 функция-обработчик клика по любой кнопке поля. Имея под рукой массив кнопок разумеется вы сможете пройти по ним циклом и поменять цвета по любым условиям.

P.S. Намеренно не приводил примеры кода, ибо уверен, что все легко гуглится) будут конкретные вопросы - задавайте)