Показать сообщение отдельно
  #7 (permalink)  
Старый 22.10.2019, 06:32
Интересующийся
Отправить личное сообщение для joyandjoy Посмотреть профиль Найти все сообщения от joyandjoy
 
Регистрация: 21.10.2019
Сообщений: 19

Совсем запутался.
Насчет проверки, а что еще нужно проверять? Верно ли я понял что нужно использовать number_int? мы же очистим все кроме цифр, разве нет?
p.s. я ж не профи, очень многого не знаю
Кажется, я не правильно изначальную информацию дал
Вот полный файл:
Код:
<?php
$first = rand(1, 5); //получаем случайное значение
$second = rand(1, 5);
if ($first == $second) {//убираем возможность одинаковости первого и второго числа и исключаем тем самым нулевой результат
 $first = rand(1, 3);
 $second = rand(4, 5);
 }

 function mirror ($name, $name_l) //привязываем к выводимой в браузер ($first_l и $second_l) переменной текстовое значение в соответствии с используемой при вычислении 
  {
$g = "1";
$r = "0";
  switch ($name) { 
case 1:
    $name_l = "$g"; break;
    case 2:
    $name_l = "$r$g"; break;
case 3:
    $name_l = "$r$g$r"; break;
case 4:
    $name_l = "$r$g$r$g"; break;
case 5:
    $name_l = "$r$g$r$g$r"; break;
}
return $name_l;
 }
 
 $first_l = mirror ($first, $first_l); //инициализируем переменную
 $second_l = mirror ($second, $second_l);

// привязываем количество цвета к значению $first и $second 
 function mirrorColor ($numvar){
     switch ($numvar) {
        case 1:
        $green = 1;
        $red = 0; break;    
     case 2:
        $green = 1;
        $red = 1; break;
     case 3:
        $green = 1;
        $red = 2; break;
     case 4:
        $green = 2;
        $red = 2; break;
     case 5:
        $green = 2;
        $red = 3; break;
    }
 return array ($green, $red);
 }
 
$f_color = mirrorColor ($first);// инициализируем массив
$s_color = mirrorColor ($second); 

$gr_word = "<span style=color:green;font-weight:bolder>зеленых1</span>";
$red_word = "<span style=color:red;font-weight:bolder>красных0</span>";
 
$t = time();  //инициализируем переменную для смены операций временем в секундах на момент запроса
  
if ($t & 1) //меняем операцию в соответствии с четностью переменной
        {
           $_SESSION['res'] = $f_color['0'] + $s_color['0']; //заносим результат в сессионную переменную
		      $color = "$gr_word";//выводимое в браузер название цвета
         }
else
        {
          $_SESSION['res'] = $f_color['1'] + $s_color['1'];
		      $color = "$red_word";
        }
  

if (isset($_POST['result'])) { //если это был ответ


if (trim(strip_tags($_POST['result'])) == $_SESSION['res']) { //убираем, на всяки случай, теги и пробелы с обоих сторон и сравниваем результаты

$_SESSION['msg'] =  " Верно<br />";

 

$Lat = ["1"];

}
else {
$_SESSION['msg'] =  " Ошибка<br />";
$Lat = ["0"];
}
 
if (empty($_POST['result'])) {
$_SESSION['msg'] = " Нужно ввести ответ...<br />";
$Lat = ["0"];
}

 } 
 
  ?>
  
  
<? 


    <comments> 

        <form method="post" name="uploader" enctype="multipart/form-data" id="commt">
    		<inline>

    			<div class="textarea"> 
    				<textarea  name="text_comment" placeholder="<?echo $place_holder?>" required id="textAnsver_001"></textarea>
    					<inline class="second">  
    						<label><img src="<?echo$dir_blocks_http?>user.png" alt="ava" class="men"></label>
    						<input type="text" name="sended_name" required placeholder="Имя" value="<?echo$REAL_NAME?>" <?echo$disabled_name?> >	  
    						<label><img src="<?echo$dir_blocks_http?>email.png" alt="email" class="email"></label>
                            <input type="email" name="sended_email" required  placeholder="Email" value="<?echo$REAL_EMAIL?>" <?echo$disabled_email?> > 
                            <input type="hidden" name="img_hidden" required  placeholder="Email" value=""> 
 <input type="submit" id="submit" name=""  value="Отправить"/>				
     					</inline>

    					
                            <!-- выводим текстовое описание примера //-->
Сколько <?=$color?> яблок?<br />
<?="$first_l$second_l"?> <br />
Ваш ответ: <input type="text" id="result" name="result" value="" style="width:17px; font-weight:bold;margin-top: 10px;" /><br />
     <!-- выводим соотв. сообщение //-->
<span style="background:yellow;"><?=$_SESSION['msg']?></span>

<!-- очищаем сесионную переменую сообщения //-->
<?php unset ($_SESSION['msg']);?>


    			</div>              
    		</inline>	 
    	</form>
    </comments>            
        </form>
Если у кнопки отобрать name="send_comments", то комментарий не отправляется, проходит только проверка капчи, и в выводе отдается информация верно не верно решение капчи (да, я понимаю, эта информация пользователю нужна только когда ответ неверен, но сейчас это для меня, чтобы было понятно работает или нет)
И да, капча как бы работает.

Цель вроде простая, средствами jqery сделать проверку на капчу, и в случае успеха отправить форму. Но вы говорите что еще и остальные поля надо проверить, но что и как...
Ответить с цитированием