Как сделать так, чтобы радио-кнопка контролировала все это? - PullRequest
0 голосов
/ 01 июля 2010

Когда посетители регистрируются на моем сайте, они делают это как основатель группы или как человек, присоединяющийся к существующей группе. Никто не является "безгрупповым". У меня есть одна страница регистрации со следующими полями: имя, фамилия (переключатели для выбора типа группы: новая или существующая), имя группы, пароль группы, адрес электронной почты, пароль, пароль подтверждения. Меня особенно интересуют переключатели, название группы и пароль группы.
Конкретная функция, которую я ищу, это: Если выбран «Новый», AJAX проверяет, существует ли имя группы в базе данных, отображает «Хорошо» или «Уже занято». ТАКЖЕ: при отправке формы пароль сохраняется в базе данных.
Если выбран «Существующий», AJAX проверяет, существует ли имя группы в БД, отображает «Соответствует» или «Несуществующий». ТАКЖЕ: когда форма отправлена, пароль сверяется с базой данных.

Основы этого, я думаю, у меня есть, но как заставить радио-кнопку диктовать так много, мне не под силу. Любая помощь будет оценена.

Ниже приведена часть моего php-файла. (Кстати, я писал mysqli для этого проекта.)

<h1>Register</h1>
<form action="register.php" method="post">
    <fieldset>

    <p><b>First Name:</b> <input type="text" name="first_name" size="20" maxlength="20" value="<?php if (isset($trimmed['first_name'])) echo $trimmed['first_name']; ?>" /></p>

    <p><b>Last Name:</b> <input type="text" name="last_name" size="20" maxlength="40" value="<?php if (isset($trimmed['last_name'])) echo $trimmed['last_name']; ?>" /></p>

  <p><b>Are you registering a new group or joining an existing group?</b> <br />
  New:<input type="radio" value="new" name="gtype">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;  
  Existing:<input type="radio" value="existing" name="gtype">  </p>

    <p><b>Group ID:</b> <input type="text" name="group_id" size="20" maxlength="40" value="<?php if (isset($trimmed['group_id'])) echo $trimmed['group_id']; ?>" /></p>

    <p><b>Group Password:</b> <input type="password" name="gpass" size="8" maxlength="5" /> 
      <small>Use only numbers. Must be 5 digits long.</small></p>

    <p><b>Email Address:</b> 
    <input type="text" name="email" size="30" maxlength="80" value="<?php if (isset($trimmed['email'])) echo $trimmed['email']; ?>" onBlur='checkEmail(this)'/><span id='info'></span></p>

    <p><b>User Password:</b> 
      <input type="password" name="password1" size="8" maxlength="4" /> 
      <small>Use only numbers. Must be 4 digits long.</small></p>
    <p><b>Confirm Password:</b> <input type="password" name="password2" size="4" maxlength="4" /></p>
    </fieldset>

    <div align="center"><input type="submit" name="submit" value="Register" /></div>
    <input type="hidden" name="submitted" value="TRUE" />

</form>

1 Ответ

0 голосов
/ 01 июля 2010

Я предлагаю использовать jquery:

Обнаружить изменение переключателя, например:

$("input[@name='gtype']").change(

Захватить содержимое текстового ввода, содержащего название группы, и отправить его наскрипт PHP.

$.ajax
        ({
            url: 'Apps/CheckGroupName.php',
            type: 'POST',
            data: 'groupName=' + groupName,

            success: function(result)
            {
                // Do whatever you need to do based on the result
            }
        });

В сценарии PHP проверьте имя группы в базе данных и отобразите результат.В JQuery этот результат закончится успехом: функция (результат), где вы можете делать все, что вам нужно (например, предупреждать пользователя или подтверждать, что группа не существует.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...