Есть форма
<?php
$code = 1234;
?>
<input type="text" placeholder="Введите код сообщения" />
<input type="submit" name="submit" value="проверить" />
Подскажите, пожалуйста, как сделать так что бы что когда ввожу 1234, у меня выходило сообщение что код верный, если нет то ошибка.
Все что я нахожу это валидацию формы, заведена форма или нет.
я делаю это так
<form>
<input type="text" pattern="<?php echo $code ?>" />
<button type="submit">Отправить</button>
</form>
Как добавить что бы внизу выходило, если верно введено то ниже надпись корректно введено и внизу выходила еще input, а если нет то ошибка?
Вариант 1
Если Ваш код является секретным (а иначе зачем его хранить в php на сервере?), то решение задачи должно быть следующим:
Вы создаёте отдельный php-файл (скажем, code.php), где будет храниться и по запросу возвращаться Ваш код
<?php
$code = 1234;
echo $code;
?>
В форме добавляете атрибуты action и method и с помощью ajax'a (чтобы не перезагружалась страница) отправляете запрос на сервер, чтобы сравнить Ваш код и код, введённый пользователем. Если значения не совпадают, выводите сообщение об ошибке. Если совпадают, пишете "успешно" и открываете скрытый второй инпут
<form action="code.php" method="POST">
<input type="text" name="code" placeholder="Введите код сообщения" />
<input type="submit" name="submit" value="проверить" />
<p class="message"></p>
<input type="text" name="newInput" hidden="" placeholder="Скрытый инпут" />
</form>
$(document).ready(function() {
$('[type=submit]').click(function(e) {
e.preventDefault();
const form = $("form");
$.ajax({
cashe: false,
type: form.attr('method'),
url: form.attr('action'),
data: form.serialize(),
success: function(data) {
if($('[name=code]').val() == data) {
$('.message').text('Верно!').css('color','green');
$('[name=newInput]').prop('hidden',false);
}
else {
$('.message').text('Ошибка!').css('color','red');
}
}
});
});
});
Вариант 2
Если же Ваш код не секретный, то с php вообще нет смысла заморачиваться - вы можете прямо на клиенте проверять то, что ввёл пользователь, и осуществлять дальнейшие действия:
$('[type=submit]').click(function(e){
e.preventDefault();
if($('[name=code]').val() == 1234) {
$('.message').text('Верно!').css('color','green');
$('[name=newInput]').prop('hidden',false);
}
else {
$('.message').text('Ошибка!').css('color','red');
}
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<form action="" method="">
<input type="text" name="code" placeholder="Введите код сообщения" />
<input type="submit" name="submit" value="проверить" />
<p class="message"></p>
<input type="text" name="newInput" hidden="" placeholder="Скрытый инпут" />
</form>
Вместо '1234'
вставьте свою переменную из php.
let code = 1234; // '<?php echo $code;?>'
let input = document.querySelector('input')
input.addEventListener('input', function() {
input.value == code ? console.log('success') : console.log('error')
})
<input type="text" />
Виртуальный выделенный сервер (VDS) становится отличным выбором
Задача: собираю данные геодаты с сервера (не моего)Для этого формирую запрос для определенного промежутка координат и в цикле for отправляю...
В разработке сайта, начинающийНе могу подцепить javascript к шаблону сайта
Разместил вот здесь всю реализациюВ каком направлении думать, чтобы реализовать раскрытие нового блока как-бы из квадрата, который расположен...
У меня есть список , в котором будет неизвестное количество 'li'В каждой li будут всегда одинаковые элементы,которые должны редактироваться...