Прошу помощи у мастеров!

1. igrovik1 (28.02.2017 / 02:29)
Приветствую уважаемые мастера. Помогите пожалуйста с решением. В js вообще полный 0.
Суть проблемы такова: стал вопрос сделать запоминание вводимых пользователем данных, и их выводе при следующем входе пользователя на определенную страницу.
Порядок такой:
должно быть 2 окошка в первое человек к примеру вводи 10 а во второе 35 и эти данные должны запомниться до следующего входа пользователя.

P/S также требуется что бы была кнопочка очистить. То есть чтобы человек мог очистить предыдущие значения и ввести новые. Помогите пожалуйста. Заранее большое спасибо.

2. JustZero (28.02.2017 / 02:54)
А зачем там js? Можно и на php сделать такое

3. igrovik1 (28.02.2017 / 03:40)
GalaxyNote7,
В tpl файл (dle) навряд ли можно такое всунуть. А хотя бы пример такого можно????

4. JustZero (28.02.2017 / 04:41)
ну js тогда cookie пиши/читай/чисти

5. JustZero (28.02.2017 / 04:58)
<html>
<head>
    <title>test</title>
</head>
<body>
<form action="#">
    <input type="text" id="input1">
    <input type="text" id="input2">
    <input type="submit" onclick="saveCookies(); return false;">
    <a href="#" onclick="clearCookies(); return false;">clear</a>
</form>
<script>
    function saveCookies() {
        createCookie('input1', document.getElementById('input1').value, 365);
        createCookie('input2', document.getElementById('input2').value, 365);
    }
    function createCookie(name,value,days) {
        if (days) {
            var date = new Date();
            date.setTime(date.getTime()+(days*24*60*60*1000));
            var expires = "; expires="+date.toGMTString();
        }
        else var expires = "";
        document.cookie = name+"="+value+expires+"; path=/";
    }

    function readCookie(name) {
        var nameEQ = name + "=";
        var ca = document.cookie.split(';');
        for(var i=0;i < ca.length;i++) {
            var c = ca[i];
            while (c.charAt(0)==' ') c = c.substring(1,c.length);
            if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
        }
        return null;
    }
    function clearCookies()
    {
        createCookie('input1',"",-1);
        createCookie('input2',"",-1);
    }
    function getValues() {
        document.getElementById('input1').value = readCookie('input1');
        document.getElementById('input2').value = readCookie('input2');
    }
    window.onload = getValues();
</script>
</body>
</html>

как то так.

6. Дмитрий (28.02.2017 / 09:00)

GalaxyNote7,
В tpl файл (dle) навряд ли можно такое всунуть. А хотя бы пример такого можно????
igrovik1 (Сегодня / 03:40)
Все там подключается, эти темы есть у них на форуме как подключить файл php в шаблон.

7. Дмитрий (28.02.2017 / 09:19)
как минимум вот решение
http://dle-news.ru/tips/33-ispolzovanie_ljubykh_php_vstavok_v_shablonakh.html
Или создаем файл в паке с модулями и подключаем его в шаблон
{include file="engine/modules/mymod.php"}


8. igrovik1 (28.02.2017 / 09:28)
GalaxyNote7,
Спасибо!

Добавлено через 02:34 сек.
SEMM, Спасибо!

9. Иван (28.02.2017 / 12:36)
igrovik1, http://sisyphus-js.herokuapp.com/ настраивается очень просто, почти никаких навыков не нужно. Подключаешь jQuery и sisyphus.js

Затем цепляешь форму к скрипту

$( function() {
$( "#basic_form" ).sisyphus();
} );

всё

10. igrovik1 (28.02.2017 / 13:32)
GalaxyNote7,
То что нужно! А можете подсказать как сделать, чтобы после нажатия очистить, данные в полях очищались сразу без перезагрузки страницы.

Добавлено через 01:11 сек.
SEMM, Спасибо. Но пример GalaxyNote7 мне подошел. И все же большое спасибо.

11. ramzes (28.02.2017 / 14:33)

igrovik1, http://sisyphus-js.herokuapp.com/ настраивается очень просто, почти никаких навыков не нужно. Подключаешь jQuery и sisyphus.js

Затем цепляешь форму к скрипту

$( function() {$( "#basic_form" ).sisyphus();} );

всё
Ixman (Сегодня / 12:36)
jquery и еще какую то фигню только что бы локалсторейдж заюзать? куда катится этот мир?
https://tproger.ru/articles/localstorage/
https://www.w3schools.com/jsref/event_onchange.asp

12. Иван (28.02.2017 / 15:15)
jquery и еще какую то фигню только что бы локалсторейдж заюзать? куда катится этот мир
ramzes (Сегодня / 13:33)

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

Иди пройдись по сети и посмотри на сайты, как 99% из них реализовано. Зайди здесь в архив скриптов и скачай, открой код и посмотри как они реализованы. Могу даже предложить пойти купить скриптов несколько штук баксов по 200 - 300, можно дороже, даже забугорных, открыть код и посмотреть как они реализованы. И ты ещё такую пафосную речь кидаешь? Самоутвердился? Вот не люблю таких, когда пукан бомбит из-за того что более или менее правильно кодить научился. Научился, ну молодец...

13. JustZero (28.02.2017 / 15:22)
igrovik1,
function clearCookies()
{
    createCookie('input1',"",-1);
	createCookie('input2',"",-1);
    document.getElementById('input1').value = '';
    document.getElementById('input1').value = '';
}


14. igrovik1 (28.02.2017 / 16:17)
GalaxyNote7, Большущее спасибо!!!!

15. ramzes (28.02.2017 / 17:51)
Ixman, ни чего подобного.
Просто можно и гоьовую функцию дать, без хвоста весом в сотню килобайт. Самоутверждение тут не при чем.
Ты же не покупаешь завод шелл когда тебе надо масло сменить, правильно? Вот и с подтягиванием jq ради подобного действия точно так же

16. Иван (01.03.2017 / 15:11)
ramzes, чёт я не увидел, где от вашей персоны коротенький вариант реализации нужного функционала? Нет времени и желания бесплатно что-то делать? Какие ко мне претензии? Я дал человеку 100% рабочий вариант, а от вас только возмущения не по теме. Или я не прав?

Прошу прощения за оффтоп.

17. ramzes (01.03.2017 / 21:14)
<input id="field-1" type="text"  onchange="saveFieldInMemory(this);" oninput="saveFieldInMemory(this);">
<br />
<input id="field-2" type="text" onchange="saveFieldInMemory(this);" oninput="saveFieldInMemory(this)">
<br />
<button onclick="resetFieldInMemory();">reset</button>
<script>
    function fieldMemoryRestore() {
        if(localStorage.getItem('field-1')!==null){
            document.getElementById('field-1').value = localStorage.getItem('field-1');
        }
        if(localStorage.getItem('field-2')!==null){
            document.getElementById('field-2').value = localStorage.getItem('field-2');
        }

    }
    function saveFieldInMemory(field) {
        localStorage.setItem(field.id, field.value);
    }
    function resetFieldInMemory() {
        localStorage.removeItem('field-1');
        localStorage.removeItem('field-2');
    }
    fieldMemoryRestore();
</script>

Добавлено через 05:13 сек.
предполагалось, что автор имея линки на мануалы двух простейших манипуляций, осилит самостоятельно, столь простой функционал.
а вам словарь в руки, читать что обозначает слово "возмущение", а то вообще ни к месту.
это было недоумевание

URL: https://visavi.net/topics/43465