JohnCMS 7.1.0

1. Vapmobi (05.12.2020 / 20:34)
Друзья, всем привет) Кто разбирается в этом движке. Мне нужна ваша помощь, как сделать в гостевой, чтобы была кнопка ответить пользователю? Версия двига 7.1.0

2. Terkin (06.12.2020 / 01:44)
Автор а на офф сайте у Алькатраса не спрашивал?

3. Вантуз-мен (06.12.2020 / 04:32)
Vapmobi, ничего сложного нет, делаешь ссылку ответить, вешаешь событие к примеру на jquery, выбираешь имя пользователя и вставляешь его в форму ввода

4. guest (06.12.2020 / 05:54)
Terkin, тот сайт уже не Алькатраса, он его не потянул и продал, теперь это чужой сайт или просто оф сайт движка.

5. Андрей (06.12.2020 / 20:14)
@Akyla, тот сайт уже не Алькатраса, он его не потянул и продал, теперь это чужой сайт или просто оф сайт движка.
@guest Сегодня / 05:54
с чего ты взял))

6. Vapmobi (07.12.2020 / 04:25)
Вантуз-мен,
//фильтруем новую переменную
$u = intval(check($_GET['u']));
 
 
//В поле ввода отображается имя юзера, по которому кликнули
echo'<textarea cols="' . $set_user['farea_w'] . '" rows="' . $set_user['farea_h'] . '" name="msg"  maxlength="500">';

echo isset($res['login']) ? $res['login'] : '';
            ///////////////функция ответа в гостевой для юзеров///////////////////
 
            if($u){
            $q = @mysql_query("select `name` from `guest` where `id`='" . $u . "';");
            $sk = mysql_num_rows($q);
            if($sk){
            $us = @mysql_fetch_array($q);
            echo''.$us['name'].', ';}else{
            header("location: guest.php");}}
 
 
            echo'</textarea>';

/////Возле ника прописать ссылку на ответ
echo'<a href="index.php?u=' . $res['gid'] . '">[отв]</a>';

что не так я сделал в этом коде? и как его сделать запросы под php7 в виде

$req = $db->query("запрос");
$count = $req->rowCount());
$res = $req->fetch();

7. Вантуз-мен (07.12.2020 / 13:11)
Vapmobi, зачем лезть в бд, бери прямо из DOM
вот реализация на jquery как в моторе
ссылка
<a href="#" onclick="return postReply(this)" data-toggle="tooltip" title="" data-original-title="Ответить"><i class="fa fa-reply text-muted"></i></a>

function postReply(el)
{
    postJump();

    var field  = $('.markItUpEditor');
    var post   = $(el).closest('.section');
    var author = post.find('.section-author').data('login');

    var $lastSymbol = field.val().slice(field.val().length - 1);
    var separ = $.inArray($lastSymbol, ['', '\n']) !== -1 ? '' : '\n';

    field.focus().val(field.val() + separ + author + ', ');

    return false;
};

там можно многое упростить
а можно вообще в ссылку сразу логин передавать
onclick="return postReply(тут логин)"
в функции находишь твое поле ввода и вставляешь туда этот логин

8. Vapmobi (07.12.2020 / 14:59)
Вантуз-мен, https://wdfiles.ru/rVb2

вот ссылка на index.php что-то у меня не выходит, вы не могли бы помочь? куда код вставлять? Буду примного благодарен)

9. Вантуз-мен (07.12.2020 / 15:18)
Vapmobi, лучше исходный код html скинь

10. Vapmobi (07.12.2020 / 15:35)
Вантуз-мен, сейчас только в двух сообщениях) А то в один не влазит(

Добавлено через 01:18 сек.
Вантуз-мен,не влазит весь текст(

Добавлено через 03:46 сек.
Вантуз-мен, как быть?)

11. Вантуз-мен (07.12.2020 / 15:46)
Vapmobi, ну в сообщения конечно не влезет, ты же выше создал ссылку, закинь куда-нибудь код или сюда файл прикрепи

12. Vapmobi (07.12.2020 / 15:48)
Вантуз-мен, вот ссылка на скачку

Добавлено через 01:18 сек.
Вантуз-мен, а как у вас файл прикреплять?)

13. Вантуз-мен (07.12.2020 / 15:52)
Я просил исходный код html, сохрани страницу как html
Прикрепить можно по ссылке рядом с кнопкой написать, под формой ввода

14. Vapmobi (07.12.2020 / 16:30)
ладно(

15. guest (07.12.2020 / 21:23)
с чего ты взял))
@Andrei4ik93 Вчера / 20:14
Как то так

16. Vapmobi (08.12.2020 / 07:03)
Я просил исходный код html, сохрани страницу как html
Прикрепить можно по ссылке рядом с кнопкой написать, под формой ввода
@Vantuz Вчера / 15:52
у меня нет кнопки прикрепить(

17. Вантуз-мен (08.12.2020 / 11:31)
Вот справа есть ссылка прикрепить файл
В любом другом месте выложи если не получается и ссылку сюда напиши

18. Vapmobi (08.12.2020 / 11:41)
Вантуз-мен, у меня нет такой ссылки я не могу прикрепить файл) Ведать у вас стоит ограничение на выгрузку файлов) вот ссылка с index.php
https://wdfiles.ru/rVb2
Скачайте)

19. guest (08.12.2020 / 12:18)
вы про этот форум говорите? у меня тоже нет ссылки прикрепить файл после авторизации.
image


20. JustZero (08.12.2020 / 14:56)
Vapmobi, тебе же говорили что надо скинуть html. Страницу в браузере сохранить просто....

21. Вантуз-мен (08.12.2020 / 15:10)
Vapmobi, guest, я забыл, что стоит ограничение на 150 баллов, снизил до 50, у кого меньше не могут загружать
Vapmobi мне не нужен php код, в браузере правой кнопкой мыши щелкни на экран с гостевой и нажми сохранить как html
С мобилы может тоже так можно я не знаю
Все это можно сделать без перезагрузки и обращению к бэкенду

22. Vapmobi (08.12.2020 / 15:15)
Вантуз-мен, у меня меньше 50( вот вам ссылка на html страничку https://wdfiles.ru/jx52

23. Вантуз-мен (08.12.2020 / 16:47)
Vapmobi, блин ну там же формы ввода нет, зайди под собой и получи исходный код

24. Vapmobi (08.12.2020 / 17:29)
Вантуз-мен, вот сейчас думаю правильно сделал https://wdfiles.ru/jx7A

25. Вантуз-мен (08.12.2020 / 21:34)
Vapmobi, если ты сохранил веб страницу полностью, то пришли все файлы, в том числе и вложения
или просто скинь адрес сайта и пароль логин от сайта в личку

26. Вантуз-мен (08.12.2020 / 23:54)
Vapmobi,
это вставь в <script>
    function postReply(el)
    {
        $('html, body').animate({
            scrollTop: ($('form').offset().top)
        }, 500);

        var field  = $('textarea');
        var author = $(el).closest('[class^="list"]').find('.name b').text();

        var $lastSymbol = field.val().slice(field.val().length - 1);
        var separ = $.inArray($lastSymbol, ['', '\n']) !== -1 ? '' : '\n';

        field.focus().val(field.val() + separ + author + ', ');

        return false;
    };

а ссылку вставляй после
<span class="gray">Тут время</span>
<div class="pull-right">
    <a href="#" onclick="return postReply(this)" data-toggle="tooltip" title="" data-original-title="Ответить">Отв</a>
</div>


27. Vapmobi (09.12.2020 / 00:27)
Вантуз-мен, syntax error unexpected expenting variable вот когда вставляю вот, что выдает(

28. Вантуз-мен (09.12.2020 / 01:19)
Vapmobi, значит где-то ошибся, я тебе дал html код, не php

29. Vapmobi (09.12.2020 / 01:27)
Вантуз-мен,
       <script> 
  
    function postReply(el)
    {
        $('html, body').animate({
            scrollTop: ($('form').offset().top)
        }, 500);

        var field  = $('textarea');
        var author = $(el).closest('[class^="list"]').find('.name b').text();

        var $lastSymbol = field.val().slice(field.val().length - 1);
        var separ = $.inArray($lastSymbol, ['', '\n']) !== -1 ? '' : '\n';

        field.focus().val(field.val() + separ + author + ', ');

        return false;
    };
            
  </script>          
            
пробую так тоже не выходит

30. Vapmobi (09.12.2020 / 01:40)
Вантуз-мен, большое спасибо)всё разобрался) вот только как сделать, чтобы после ответа юзеру я оставался на странице в гостевой, а то после ответа показывает только head.php и end.php и как сделать, чтобы самому себе нельзя было отвечать?)

31. Вантуз-мен (09.12.2020 / 01:55)
Vapmobi, это уже в коде надо смотреть, делать правильный редирект к примеру
чтобы не отвечать себе сделать проверку типа $user->login !== $post->login в этом случае показывай ссылку ответить
какие там переменные я не знаю, это не сложно

32. Vapmobi (09.12.2020 / 01:57)
Вантуз-мен, а почему после ответа юзеру остается только шапка и низ сайта?)

Добавлено через 05:40 сек.
Вантуз-мен, извини туплю я так понимаю редирект делается в код скрипта?)

33. Вантуз-мен (09.12.2020 / 12:05)
Что значит остаётся только шапка и низ? Я не менял php, я дал только функцию которая вызывается по событию, клик на ссылку ответ, если после отправки формы происходят какие-то проблемы с php, то что я сделал не является причиной , убери код который я дал

34. Vapmobi (09.12.2020 / 12:12)
Вантуз-мен, а как првильно внедрить этот скрипт в php?

Я вверху страницы пишу это:

<script>
function postReply(el)
{
$('html, body').animate({
scrollTop: ($('form').offset().top)
}, 500);

var field = $('textarea');
var author = $(el).closest('[class^="list"]').find('.name b').text();

var $lastSymbol = field.val().slice(field.val().length - 1);
var separ = $.inArray($lastSymbol, ['', '\n']) !== -1 ? '' : '\n';

field.focus().val(field.val() + separ + author + ', ');

return false;
};
</script>

но вот что происходит

https://validator.w3.org/nu/?doc=http://vapmobi.ru/guestbook/index.php

35. Вантуз-мен (09.12.2020 / 16:58)
Vapmobi, посмотри исходный код там есть уже <script type="text/javascript">
найди поиском по коду где это и вставь туда
так как ты сейчас сделал не правильно, <script type="text/javascript"> должен быть внутри body
то что у тебя после ответа показывается только шапка и низ это надо сделать редирект в методе который записывает сообщение в бд

Добавлено через 00:47 сек.
А ну понятно, ты не в то место добавил в итоге у тебя до header какой-то вывод отсюда и редиректы не работают

36. Vapmobi (10.12.2020 / 18:07)
Вантуз-мен, Большое спасибо тебе за терпение и работу) Я очень благодарен) hi дальше думаю сам разберусь) Там по мелочи) Какого-то фига дергается сайт когда нажимаю кнопку ответить)
Если, что дай данные яндекс деньги я как- нить задоначу

37. Вантуз-мен (10.12.2020 / 21:31)
Vapmobi, при клике там экран поднимается к форме и фокусируется, можешь убрать эту часть, у меня все норм, ничего не дергается
Яндекс кошелек 41001249962965




38. Vapmobi (11.12.2020 / 17:16)
Вантуз-мен, а что за код отвечат за этот фокус?)

39. Вантуз-мен (11.12.2020 / 19:04)
$('html, body').animate({
scrollTop: ($('form').offset().top)
}, 500);
анимация перехода к форме

field.focus()... фокус на поле ввода

40. Vapmobi (11.12.2020 / 20:05)
Вантуз-мен, field .val(field.val() + separ + author + ', ');
так будет правильно?)

41. Вантуз-мен (12.12.2020 / 03:42)
Vapmobi, просто удали focus(). там без пробелов должно быть
и удали анимацию
$('html, body').animate({
scrollTop: ($('form').offset().top)
}, 500);

только зачем тебе это я не понимаю, где-нибудь внизу пользователь нажмет ответить и ничего не поймет, так как не увидит форму

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

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