Ответы пользователя по тегу JavaScript
  • Как найти похожее решение по якорной ссылке?

    gscraft
    @gscraft
    Программист, философ
    А почему ищете на codepen? Вам нужно найти "back to top js", например, банально в Google. Скажем, https://www.w3schools.com/howto/howto_js_scroll_to...
    Ответ написан
    Комментировать
  • Запрет определённого тел номера в input?

    gscraft
    @gscraft
    Программист, философ
    Хотя в этом и нет смысла — решений множество, как и масса вопросов к конкретному окружению. Разумеется, надежнее проверять на стороне сервера: очистите строку номера от всех знаков, кроме цифр, можно отбросить начальные 7/8, и сравните:
    if ( strpos(preg_replace('/[^0-9]+/', '', '+7 999 111-22-33'), '9991112233') !== false ) // ...

    Ультимативным решением будет использование сторонней библиотеки, например —https://packagist.org/packages/giggsey/libphonenum...

    PS разумеется, это может быть решено с помощью JS:
    document.getElementById('input-id').addEventListener(function (event) {
      if (event.target.value.replace(/[^0-9]+/, '').indexOf('9991112233') >= 0)
        event.target.value = '';
    });
    Ответ написан
    Комментировать
  • Как вставить php в js?

    gscraft
    @gscraft
    Программист, философ
    Браузер не может видеть PHP-код. В общем случае механизм работает так: браузер отправляет запрос серверу, сервер передает PHP на обработку интерпретатору языка (могут быть и иные ситуации, языки, платформы и способы общения сервера с обработчиком), интерпретатор в свою очередь возвращает в поток вывода сервера результат в том или ином формате (HTML, text, JSON, двоичные файлы, не важно), результат отправляется в двух "порциях": заголовки и тело. JavaScript выполняется непосредственно в браузере, и может обращаться к серверу, например, вызывая PHP-сценарии. Браузер ничего не знает о PHP коде, JavaScript ничего не знает о PHP коде, и наоборот, сервер ничего не знает о работе страницы в браузере. Обмен идет запросами браузера к серверу.

    Таким образом, Вам нужно убрать PHP код из JavaScript тела, вывести этот код в отдельный сценарий, и обратиться к нему с помощью Ajax. У вас уже есть обращение к серверу с fetch('send.php') вот тут Вы передаете на сервер данные формы. Код, который Вы хотите выполнить в index.php, Вам нужно выполнять в send.php , этот код должен вернуть JSON, который получится в этот блок: .then(result => {

    Как вернуть JSON из send.php — отдельная задача, у вас же PHP код возвращает переадресацию, и будет ли она принята и выполнена Вашим движком запросов к серверу — библиотекой fetch. Возможно, Вам нужно вручную выполнить переадресацию, получив заголовок в response.headers.get('Location') или найдя другое решение;
    Ответ написан
    Комментировать