Не нравятся результаты поиска? Попробуйте другой поиск!
DLE FAQ » Все вопросы » jQuery » Как правильно подключить ajax в dle ?

Как правильно подключить ajax в dle ?


     05.11.2017    jQuery, ajax post    jQuery, Общие вопросы по PHP, Модули    3444

вопрос
Установил модуль для dle "отзывы" решил его усовершенствовать и подключить к нему ajax POST отправку данных в бд без обновления страницы. Но он не может получить доступ к файлу и в консоле выдает ошибку POST http://site/engine/modules/addotziv.php 403 (Forbidden)
Код js:

<script type="text/javascript">
        function knopka(){
            var v1 = $('input').val(), reg = /^[а-яА-ЯёЁa-zA-Z. ]+$/;
               
                if ( (v1.length >= 15) && (reg.test(v1) == false) ){
                    return false;
                }
				
                else {
                     $('#form').submit( function(event){
                                  event.preventDefault();
                                  $.post('engine/modules/addotziv.php', {'author':$('#name').val(), 'otziv' : $('#otziv').val() },
                                                       function(data) {
                                                             alert(data);
                                  });
                      })
                  }
           
           };
</script>

Кто знает подскажите в чем может быть проблема?

Ответил: Sander


Кто знает подскажите в чем может быть проблема?

engine/modules/.htaccess
Order Deny,Allow
Deny from all

Прямой доступ к файлам из этой директории запрещен, о чем и сообщает сервер - Forbidden 403.

vitnet
Используйте engine/modulesajax/addotziv.php

4 комментария

subone
Юзер

subone - 5 ноября 2017 12:35 -

https://toster.ru/q/264630 как пример

vitnet
PHP-developer

vitnet - 5 ноября 2017 13:06 -

Используйте engine/modulesajax/addotziv.php

paiymbek
Юзер

paiymbek - 5 ноября 2017 16:40 -

vitnet, Все закинул работает, но теперь возникла другая проблема...При нажатии кнопки submit запрос почему то отправляется 2 раза, слышал нужно вместо <input type="submit"> сделать <button type="button"> но какие изменения нужно сделать в js коде?
Вот так выглядит html

<form  id="form" action="/" method="POST"  onsubmit="knopka(); return false">
<input id="name" type="text" name="imya" value="" class="" placeholder="Ваше имя" >
<textarea id="otziv" name="otziv" class="f_input"  placeholder="Ваш отзыв"></textarea>
<input type="submit" id="fbutton"  class="fbutton" name="submit"  value="Отправить отзыв">кнопка</input>
</form>  

paiymbek
Юзер

paiymbek - 6 ноября 2017 11:17 -

Всем спасибо решил проблему, оказывается нужно было просто функцию добавить в аттрибут кнопки <input onclick="knopka()" >

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы

наверх