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

PHP

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

Обработка формы регистрации - PHP

29.01.2018, 20:20. Просмотров 168. Ответов 1
Метки нет (Все метки)

Добрый день. Суть вопроса в следующем:

есть форма регистрации:
HTML5
1
2
3
4
5
6
7
<form>
  <h3>Вы согласны c условиями?</h3>
  <label>ДА</label>
  <input type="checkbox"  name="somename1" class="checkbox partner-yes" id="somename">
  <input type="text" name="somename2" placeholder="Ваш ID"  style="display:none" id="partnerInfoId">
<input type="submit" name="register_submit_button">
</form>
Изначально поле ввода ID скрыто. Если пользователь выставляет/убирает checkbox флажок, по это поле появляется/исчезает с помощью вот такого
javascript:
Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
$(document).ready(function(){
    $("input.partner-yes").change(function(){
 
        if ($(this).prop("checked")) {
            $("#partnerInfoId").fadeIn().show();
 
            return;
        } else {
            $("#partnerInfoId").fadeOut(100);
        }
 
    });
});
Нужно, чтобы, если пользователь выставляет флажок "да", поле "Ваш ID" становилось обязательным для заполнения. И, если пользователь нажимает на кнопку регистрации, забыв при этом, заполнить это поле(при условии выставления флажка), форма не отправлялась, а страница запоминала положение checkbox(флажок-да(, для того, чтобы input "Ваш ID" был видимым)), и поле подсвечивалось красным бордером. Как это реализовать на php?
У меня есть вот такой код:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 <?
 
        if (isset($_POST['register_submit_button'])) {
 
            $partner = $_POST['somename1'];
            $check = $_POST['somename2'];
            $submit = $_POST['register_submit_button'];
            if ($check=='on') $check = 1;
 
 
            if ($check == 1 && empty($partner)) {
 
               $check = true;
            }
        }
 
        ?>
Но что-то тут не так((( И с подсветкой я не знаю как поступить. Прошу о помощи.

Добавлено через 1 час 26 минут
Вот такой скрипт получился:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<? if(isset($_POST['register_submit_button'])){
        $check=htmlspecialchars($_POST["somename1"]);
        $partner=htmlspecialchars($_POST["somename2"]);
        
        $_SESSION['UF_PARTNER_YES'] = $check;
        $_SESSION['UF_PARTNER_ID'] = $partner;
        // $_SESSION['message'] = $message;
         $error_id ="";
        // $error_message="";
        // $error_email="";
        $error = false;
 
            if(isset($check)&& empty($partner)){
                $error_id="Слишком короткое имя";
                $error = true;
            }
 
        }
?>

Вроде все работает. И ошибку выводит. ТОлько мне вместо ошибки нужно подсвеченное поле. И самое главное. При перезагрузке мой input опять становится невидимым. А мне нужно, в случае ошибки , чтоб он оставался видимым.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.01.2018, 20:20
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Обработка формы регистрации (PHP):

Обработка формы - PHP
Здравствуйте. У меня вопрос. При нажатии кнопки &quot;Войти&quot;, заполнив форму, выполняется скрипт, который проверяет на наличие логина и пароля в...

Обработка формы - PHP
После обработки html-формы с supername.php, в файл req.php поступают данные с этой формы. $ans1 = $_POST; Собственно, вопрос: как...

Обработка формы - заказа - PHP
Помогите, пожалуйста, с решением такой проблемы. Есть 2 файла anketa.php и mail.php. В файле anketa.php находится анкета, поля для...

Обработка формы в модальном окне - PHP
Здравствуйте, нужна помощь. Нужно реализовать обработку формы в модальном окне (как показано на рисунке), поясню словами: 1...

Обработка формы. Запись данных в базу - PHP
Добрый день господа, Есть проблема с записью данных в базу. Помогите решить. Вот такой фрагмент кода в обработчике формы: //Вставляем...

Обработка формы, проверка типа данных - PHP
Здравствуйте. Через форму передаю определенное число: &lt;input type=&quot;text&quot; name=&quot;number&quot; value=&quot;0&quot; size=&quot;5&quot;&gt; Далее в скрипте проверяю...

1
andyyy
156 / 154 / 58
Регистрация: 26.05.2016
Сообщений: 1,066
31.01.2018, 20:40 #2
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<? if(isset($_POST['register_submit_button'])){
        $check=htmlspecialchars($_POST["somename1"]);
        $partner=htmlspecialchars($_POST["somename2"]);
        
 
     if(empty($partner)) {
          $errpar =true;
         $errpar = "Поле id обязательно для заполнения";}
        }
 
        if(   $errpar==false) {//здесь код если ошибки нет}
        echo "все ок";
        }
        
        ?>
HTML5
1
2
<html>
<head>
Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
 <script src='js/jquery-3.2.1.min.js'>
  </script>
<script>
 
$(document).ready(function(){
    $("input.partner-yes").change(function(){
 
        if ($(this).prop("checked")) {
            $("#partnerInfoId").fadeIn().show();
 
            return;
        } else {
            $("#partnerInfoId").fadeOut(100);
        }
 
    });
});
    
    </script>
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
    </head>
 
 
    <body>
 
    <form action='' method='post'>
  <h3>Вы согласны c условиями?</h3>
  <label>ДА</label>
  <input type="checkbox"  name="somename1" class="checkbox partner-yes" id="somename">
  <input type="text" name="somename2" placeholder="Ваш ID" required value='<?php if($errpar) {echo $errpar;}?>'  style="display:none" id="partnerInfoId">
<input type="submit" name="register_submit_button">
</form>
<p><span style='background: red;'><?php if($errpar) {echo $errpar;}?></span></p>
 
      
 
    </body>
 
    </html>
Добавлено через 1 минуту
required + добавил в инпут, можете его убрать -тогда сработает php

Добавлено через 1 минуту
замените эту строчку
HTML5
1
<input type="text" name="somename2" placeholder="<?php if($errpar) {echo $errpar;} else { echo "Ваш ID";}?>"  value=''  style="display:none" id="partnerInfoId">
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
31.01.2018, 20:40
Привет! Вот еще темы с ответами:

Обработка формы заказа: отослать анкету на почту - PHP
Добрый день столкнулся с такой проблемой. Пытался сам что то сделать нужно на сайте сделать чтобы после заполнения анкеты она отправлялась...

POST с формы со связанными динамичесскими данными (массивы) и последующая его обработка - PHP
Здравствуйте уважаемые! Возникла некая (интересная ) задачка... Если кратко, то суть такова. Есть форма, большая форма, ооочень большая...

Скрипт регистрации - PHP
Доброе время суток. Нуждаюсь в помощи опытного програмыста. Нужен скрипт регистрации для сайта и интструкция по его установке.

Форма регистрации - PHP
Добрый день, уважаемые форумчане. Помогите пожалуйста реализовать следующее... Существует сайт, но особо &quot;умные&quot; люди ставят...


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

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

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