0 / 0 / 0
Регистрация: 13.02.2023
Сообщений: 31

Умная кнопка

13.02.2023, 09:04. Показов 1729. Ответов 37
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте!

Скажите, как написать код задачи, чтоб при введении слова в текстовом поле и проверке введённого слова на верность, появлялась кнопка с ссылкой на ресурс?

Получилось сделать проверку текста на истину и выведение ответа: истина/ложь.

Осталось решить как сделать, после ввода верного ответа, появляющуюся кнопку с ссылкой на ресурс...

Код:

PHP/HTML
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
<!DOCTYPE html> 
<html> 
    <head> 
        <meta charset="utf-8"> 
        <title>Ввод ответа</title> 
    </head> 
    <body> 
    <form>
        <p id="error" style="display: none; color: red"></p>
        <p>Введите ответ:</p> 
        <p><input name="ip" pattern="^[Л-лукошко]"></p> 
        <p><input type="submit" value="Проверить"></p> 
    </form>
    <script src="https://snipp.ru/cdn/jquery/2.1.1/jquery.min.js"></script> 
    <script> 
        (function($) {
            var error = {
                show: function(msg) {
                    $('#error').text(msg).css('color', 'red').show();
                },
                success: function(msg) {
                    $('#error').text(msg).css('color', 'green').show();
                },
                hide: function() {
                    $('#error').hide();
                }
            }
 
            $('form [type="submit"]').off().on('click', function() {
                error.hide();
                event.preventDefault();
                if($('[name="ip"]').val() == "Счастье") {
                    error.success('Верно!');
                } else {
                    error.show('Видимо здесь что-то иное...');
                }
            });
        })(jQuery);
    </script>
    </body> 
</html>
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
13.02.2023, 09:04
Ответы с готовыми решениями:

Умная таблица
Подскажите, делаю автоматизацию для заполнения таблиц ecxel, но вот в чем вопрос, можно ли сделать так, чтобы при выборе определенного...

Умная классификация
Доброго времени суток! Подскажите пожалуйста: Есть список что, кому и сколько нужно (экспорт из другой программы), который очень...

Умная Функция
Есть функция которая в зависимости от входных параметров, делает сложные вычисления, а потом выдаёт результат. Как можно реализовать,...

37
Эксперт JSЭксперт HTML/CSS
 Аватар для krvsa
3862 / 1762 / 434
Регистрация: 14.03.2022
Сообщений: 4,453
15.02.2023, 18:01
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от xkkx Посмотреть сообщение
Иначе зачем вообще использовать <form> ?
Меня в своего перековывать не нужно... Я только на форму и вешаю обработчик.

А тему эту еще раз развил благодаря тебе.
Тогда у меня аргументов не хватило... Теперь их список увеличился.
0
132 / 76 / 16
Регистрация: 08.07.2022
Сообщений: 309
15.02.2023, 18:20
Цитата Сообщение от krvsa Посмотреть сообщение
Я только на форму и вешаю обработчик.
А я уже перестал что либо вешать, ибо устал писать обработчики ajax и fetch. В соседней теме по PHP нашёл отличный скрипт, который довёл до ума, и теперь могу делать аля так

HTML5
1
2
3
4
5
<form id="login" data-api-method="login">
    <input type="text" value="" name="login"/>
    <input type="password" value="" name="password"/>
    <input type="submit"/>
</form>
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
MethodAPI('login').on('onPreCall', (event, ArgsCall) => { // Перед вызовом
    // Добавляем параметры для вызова 
    ArgsCall.append('params[]', 1);
    ArgsCall.append('params[]', 2);
 
    // return false; // Завершим вызов к API
}).on('onResult', (event, params) => { // onSuccess / onError
    // console.log(params);
    // let isError = params['error'] ? 'Ошибка: ' : 'Успех: ';
    // alert(isError  + params['message']);
}).on('onError', (event, params) => { // Если скрипт вернул ошибку в ответе error 
     console.log(params);
     alert('Ошибка: ' + params['message']);
}).on('onSuccess', (event, params) => { // Если скрипт НЕ вернул ошибку в ответе error 
     console.log(params);
     alert('Успех: ' + params['message']);
}).on('onCatch', (event, errorMessage, ArgsCall) => { // К примеру отвалился интернет 
     console.log(errorMessage);
});

Ну и сам PHP
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
require_once "api.php";
 
if(!defined('method_call')) {
    return;
}
 
switch(method_call) {
    case 'login':
        $login = trim(filter_input_post_or_get('login'));
        $password = trim(filter_input_post_or_get('password'));
 
        if($login == 'admin' && $password == 'admin') {
            returnOutSession('Всё совпало!');
        } else {
            returnOutError( 'Логин или пароль - неверный.' );
        }
    break;
    default:
        returnOutError('Метод не определён');
}


Позволяет плодить формы в огромных количествах, писать разный вид функционала за считанные секунды, без головной боли

Работает по умолчанию как POST запрос, хавает все INPUT включая type="file" multiple. Работают все проверки

Последнюю версию выкладывать тут
1
0 / 0 / 0
Регистрация: 13.02.2023
Сообщений: 31
16.02.2023, 07:12  [ТС]
Можно объяснить что значит многоточие за слэшем? Что в этом месте прописать?

Цитата Сообщение от xkkx Посмотреть сообщение
Неверно вешать на кнопку

JavaScript
1
2
3
4
5
6
$('form').submit(function(e) {
   e.preventDefault();
// ...
  let Input_ip = $(this).find('[name="ip"]');
// ...
});
Можно показать как это полным текстом кода будет выглядеть?
Что-то мне трудно понять что куда прописать...
0
132 / 76 / 16
Регистрация: 08.07.2022
Сообщений: 309
16.02.2023, 11:52
Лучший ответ Сообщение было отмечено Dobrolubov как решение

Решение

Цитата Сообщение от Dobrolubov Посмотреть сообщение
Что в этом месте прописать?
Да

Цитата Сообщение от Dobrolubov Посмотреть сообщение
Можно показать как это полным текстом кода будет выглядеть?
PHP/HTML
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
<!DOCTYPE html> 
<html> 
    <head> 
        <meta charset="utf-8"> 
        <title>Ввод ответа</title> 
    </head> 
    <body> 
  <form>
    <p id="error" style="display: none; color: red"></p>
    <p>Введите ответ:</p> 
    <p>  <input type="text" required name="ip"/>
    </p> 
    <p><input type="submit" value="Проверить"/></p> 
  </form>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.3/jquery.min.js"></script> 
    <script> 
        (function($) {
            var error = {
                show: function(msg) {
                    $('#error').text(msg).css('color', 'red').show();
                },
                success: function(msg) {
                    $('#error').text(msg).css('color', 'green').show();
                },
                hide: function() {
                    $('#error').hide();
                }
            }
            
            
            const words = {
              'счастье':true,
              'свобода':true
            };
 
           $('form').submit(function(e) {
                error.hide();
                e.preventDefault();
         
                let Input_ip = $(this).find('[name="ip"]').val().trim().toLowerCase();
                let button_submit = $(e.originalEvent.submitter);
             
                if(words[Input_ip] !== undefined && words[Input_ip]) {
                    error.success('Верно!');
                    
                    if(button_submit.data('linkOpen')) {
                        location = button_submit.data('linkOpen');
                    } else {
                        button_submit.val('Перейти');
                        button_submit.data('linkOpen', 'https://linkOpen.linkOpen');
                    }
                } else {
                    error.show('Видимо здесь что-то иное...');
                    
                    button_submit.val('Проверить');
                    button_submit.data('linkOpen', false);
                }
            }); 
        })(jQuery);
    </script>
    </body> 
</html>
1
0 / 0 / 0
Регистрация: 13.02.2023
Сообщений: 31
16.02.2023, 17:56  [ТС]
Цитата Сообщение от xkkx Посмотреть сообщение
Да
Благодарю!) Единственный момент... Решение данной задачи возникло по причине переноса сайта с wix на наш uCoz. И вот интересно, что данное решение хорошо функционирует на wix и отказывается выполнять свою функцию на uCoz, просто пишет "Недопустимое содержимое" и даже не сохраняет код...
0
132 / 76 / 16
Регистрация: 08.07.2022
Сообщений: 309
16.02.2023, 18:04
Цитата Сообщение от Dobrolubov Посмотреть сообщение
и даже не сохраняет код...
Используйте любой другой FTP доступ. filezilla\vs code
1
0 / 0 / 0
Регистрация: 13.02.2023
Сообщений: 31
16.02.2023, 18:09  [ТС]
Цитата Сообщение от xkkx Посмотреть сообщение
Используйте любой другой FTP доступ. filezilla\vs code
Мне трудно даётся понимание вашего терминологического аппарата... Можно подробнее? Что значит FTP доступ filezilla\vs code? Как это воплотить действиями?
0
132 / 76 / 16
Регистрация: 08.07.2022
Сообщений: 309
16.02.2023, 18:25
Цитата Сообщение от Dobrolubov Посмотреть сообщение
Мне трудно даётся понимание вашего терминологического аппарата... Можно подробнее? Что значит FTP доступ filezilla\vs code? Как это воплотить действиями?

А код то тут причём? Собственно. Если тебе файловый менеджер uCoz голову сверлит. Используй сторонний, через который зальёшь все файлы.
0
0 / 0 / 0
Регистрация: 13.02.2023
Сообщений: 31
16.02.2023, 19:38  [ТС]
Цитата Сообщение от xkkx Посмотреть сообщение
А код то тут причём? Собственно. Если тебе файловый менеджер uCoz голову сверлит. Используй сторонний, через который зальёшь все файлы.
Вот это уже интересно! А как это можно сделать?)))
0
16.02.2023, 21:33

Не по теме:

Не факт что Юкоз позволит поменять файлы, используя сторонний менеджер.

0
132 / 76 / 16
Регистрация: 08.07.2022
Сообщений: 309
16.02.2023, 21:48
Цитата Сообщение от Dobrolubov Посмотреть сообщение
А как это можно сделать?)))
Так стандартный FTP доступ всегда должен быть. Иначе бегите от туда, и не думайте !!!
1
132 / 76 / 16
Регистрация: 08.07.2022
Сообщений: 309
16.02.2023, 21:51
Ой. Советую уже бежать! Они берут деньги за передачу файлов по ФТП)))

https://www.ucoz.ru/help/tools/ftp-podklyuchenie

Есть куда лучше хостинги, аля timeweb. Плачу 1200 рублей по тарифу Leo VHVDS и в ус не дую. Никаких ограничений и доплат за воздух
Миниатюры
Умная кнопка  
1
0 / 0 / 0
Регистрация: 13.02.2023
Сообщений: 31
17.02.2023, 07:35  [ТС]
Цитата Сообщение от xkkx Посмотреть сообщение
А код то тут причём? Собственно. Если тебе файловый менеджер uCoz голову сверлит. Используй сторонний, через который зальёшь все файлы.
Дело в том что, исходник, который я опубликовал в первом сообщении на uCoz проходит и функционирует нормально. А когда код правится, то выдаёт ошибку. Можно его как-то поправить так, что б продолжал функционировать на uCoze?

Добавлено через 1 час 16 минут
Цитата Сообщение от xkkx Посмотреть сообщение
Ой. Советую уже бежать! Они берут деньги за передачу файлов по ФТП)))

https://www.ucoz.ru/help/tools/ftp-podklyuchenie

Есть куда лучше хостинги, аля timeweb. Плачу 1200 рублей по тарифу Leo VHVDS и в ус не дую. Никаких ограничений и доплат за воздух
С деньгами много вариантов решения вопросов) В том-то и дело...
0
132 / 76 / 16
Регистрация: 08.07.2022
Сообщений: 309
17.02.2023, 13:51
Цитата Сообщение от Dobrolubov Посмотреть сообщение
С деньгами много вариантов решения вопросов) В том-то и дело...
1200 это копейки, когда хотя бы 3 сайта окупаются на 50 + тысяч пассивного
1
0 / 0 / 0
Регистрация: 13.02.2023
Сообщений: 31
17.02.2023, 14:45  [ТС]
Цитата Сообщение от xkkx Посмотреть сообщение
1200 это копейки, когда хотя бы 3 сайта окупаются на 50 + тысяч пассивного
Согласен!) Для этого их стоит сделать сначала) Вот я обратился здесь для решения функционала кнопки) Может получится решить такую задачку, чтоб можно было спокойно на uCoz залить?
0
132 / 76 / 16
Регистрация: 08.07.2022
Сообщений: 309
17.02.2023, 18:43
Цитата Сообщение от Dobrolubov Посмотреть сообщение
на uCoz
Передача PHP-файлов на сайт невозможна. Передача PHP-файлов (если услуга PHP входит в пакет) осуществляется на отдельный сервер.
Для чего такой хостинг? Если даже html не даёт грузить.
1
0 / 0 / 0
Регистрация: 13.02.2023
Сообщений: 31
19.02.2023, 19:11  [ТС]
Цитата Сообщение от xkkx Посмотреть сообщение
Для чего такой хостинг? Если даже html не даёт грузить.
Html грузить даёт и в сообщении я об этом написал. Я пишу о том, что именно это решение блокирует по какой-то причине... Исходный вариант функционирует спокойно.
0
0 / 0 / 0
Регистрация: 13.02.2023
Сообщений: 31
01.03.2023, 19:29  [ТС]
Благодарю! Всё получилось!)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
01.03.2023, 19:29

Умная парковка
Здравствуйте. Есть такая задача. Нужно подхватывать видеопоток с IP-камеры, передавать это на сервер, к которому подключается Raspberry Pi....

Умная* печать
Доброго времени суток. Стоит задача внедрения модуля печати в готовую программу те необходимы дополнительные функции. Например добавление...

Умная многопоточность
Добрый день! У меня есть проект где используется многопоточность. Суть проекта - оптимизация изображений, каждое изображение в среднем...

Умная форма
Всем привет! Не силен в access Подскажите, пжл, делаю программу учета входящих звонков и запись. Никак не могу найти описание в...

Умная изба
Начало было на предыдущем форуме. Хочется собрать систему, которая бы выполняла следующие функции: 1) Охранно-пожарная сигнализация ...


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

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

Новые блоги и статьи
Почему SEO не начинается с ключевых слов: что проверить до написания текстов
Neotwalker 01.08.2026
Когда владельцу сайта предлагают заняться SEO, первым шагом часто становится сбор запросов и написание текстов. Логика кажется понятной: 1. Находим ключевые слова. 2. Добавляем их на. . .
Знание — сила: Доктрина интенциональности знаний, углубление в формулу
Hrethgir 01.08.2026
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11957&stc=1&d=1785567302 Знаменитый афоризм Фрэнсиса Бэкона «Знание — сила» (Scientia potentia est) в массовой культуре принято понимать. . .
SUNO Ai - Река Без Дна
zorxor 31.07.2026
Автор стихотворения - астрофизик Марина Катыс Ссылка на сгенерированную музыкальную композицию: https:/ / suno. com/ song/ 6f6e5464-b290-4650-be6c-44c85f8d8013 Я говорю, что Время- как вода течет. . .
Из невошедшего на форум (диалог с ИИ-гугла)
zorxor 29.07.2026
А вот, что интересно, сказал мне ИИ-гугла: Этот текст — эмоциональный пост пользователя под ником zorxor на интернет-форуме (вероятно, посвященном мистике, непознанному или альтернативной науке). . . .
Был праздник вчера, а я и не знал.
kumehtar 28.07.2026
27. 07. 2026г. Intel Core 2 Duo исполнилось 20 лет Салют, шампанское, овации! :drink:
Нейтральные знания, чистый код - бла-бла-бла-бла, на самом деле кликбейт и самореклама, плагиат, и вот почему
Hrethgir 27.07.2026
То-есть отклонение такой публикации говорит само за себя, и пусть только возьмут на вооружение после отклонения публикации - это будет чистейшим актом плагиата. Отклонял Хабр. Дословно, отклонённая. . .
тв 16 бой ии
anaschu 27.07.2026
Великий Перелом ИИ: Как уравнения ОДУ Radau дожали цензурные фильтры Алисы Фиксируем в мемофонде Теории Всего беспрецедентный факт в истории ИИ-зондирования. В затяжном многораундовом. . .
мв 15. непроверенное, возможно, глюк
anaschu 27.07.2026
НАУЧНО-АНАЛИТИЧЕСКИЙ ОТЧЕТ. РАЗДЕЛ 1. 1: «НАУКА» (РАСШИРЕННАЯ СТЕХИОМЕТРИЧЕСКАЯ И ГЕНЕТИЧЕСКАЯ ВЕРСИЯ)Тема: Теоретическое обоснование инвариантности 19-мерного тензорного ядра непрерывных ОДУ и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru