Как отправить данные из формы к крипту PHP 1.X

Как отправить данные из формы к крипту PHP

 
Посетитель
small user social cms
Сообщений: 32
Всем привет. Делаю форму для отправки СМС, написал её на HTML и встроил в код страницы. Механизм такой, после нажатия кнопки Отправить, данные из полей должны передаться в фаил по указанному пути. С этим у меня и проблема, как прописать путь к файлу php. Фаил я положил в папку с шаблоном в каталог /special/
Привожу код формы если кому нужно
Код PHP:
  1. <form class="contact_form_phone" method="post" action="../special/sms_send.php">
  2. <ul>
  3. <li><input type="text" placeholder="Степан Васильков" name="sender" onclick="this.value='';" onfocus="this.select()" onblur="this.value=!this.value?'* Ваше Имя':this.value;" value="* Ваше Имя" class="your-name" required maxlength="16"/></li>
  4. <li><input type="text" placeholder="+7XXXXXXXXXX" name="phone" onclick="this.value='';" onfocus="this.select()" onblur="this.value=!this.value?'* Ваш Телефон':this.value;" value="* Ваш Телефон" class="phone-address" required pattern="^\+7\d{3}\d{7}$" maxlength="12" /></li>
  5. <li><input type="submit" name="send" value="Отправить" class="send-message" /></li>
  6. </ul>
  7. </form>
Проблема заключается в том, что фаил не вызывается, он не находится просто.
Ученик
Посетитель
small user social cms
Медаль
Сообщений: 551
Gordankem:
он не находится просто
Путь к файлу:
"/templates/<?php echo TEMPLATE; ?>/special/sms_send.php"
Реклама
cms
Посетитель
small user social cms
Сообщений: 32
DeDja:

Gordankem:
он не находится просто
Путь к файлу:
"/templates//special/sms_send.php"

Вопрос, в echo TEMPLATE; нужно прописать имя шаблона или оно имя шаблона определяется само?
Ученик
Посетитель
small user social cms
Медаль
Сообщений: 551
Gordankem:
или оно имя шаблона определяется само
Определяется само благодаря переменной TEMPLATE.
Можно прописать явным порядком с именем шаблона,
к примеру так: "/templates/_default_/special/sms_send.php"
Успехов.
Посетитель
small user social cms
Сообщений: 32
Не срабатывает.
Код PHP:
  1. action="/templates/<?php echo TEMPLATE; ?>/special/sms_send.php"
Пустая страница Ошибка 404 и адрес не отрабатывает.
Я прописал это в чистом HTML в коде страницы.
Как отправить данные из формы к крипту PHP

Сработало только в явном виде
Код PHP:
  1. action="/templates/_montaj_/special/form_sms.php"
Но это как бы небезопасно считается вроде, как это скрыть?
Редактировалось: 2 раз (Последний: 23 октября 2019 в 06:36)
Ученик
Посетитель
small user social cms
Медаль
Сообщений: 551
Gordankem:
как это скрыть?
Невозможно скрыть разницу между
sms_send.php и form_sms.php
(и шаблоне _default_).

В консоли Вашего сайта три ошибки -
Страница не найдена — 404
Нет файлов:

/graphics/loader.white.gif
/graphics/zoomout.cur
/graphics/outlines/drop-shadow.png
Редактировалось: 1 раз (Последний: 23 октября 2019 в 07:18)
Посетитель
small user social cms
МедальПочетный донор проекта
Сообщений: 861
Gordankem:
Пустая страница Ошибка 404 и адрес не отрабатывает.
Я прописал это в чистом HTML в коде страницы.
Как отправить данные из формы к крипту PHP

Сработало только в явном виде
Вы шутите?))) <?php echo TEMPLATE; ?> прописывать в файл а не в адресную строку как у Вас.
Посетитель
small user social cms
МедальПочетный донор проекта
Сообщений: 861
Gordankem:
Но это как бы небезопасно считается вроде, как это скрыть?
Где Вы это увидели, при просмотре css или в строке?
Посетитель
small user social cms
Сообщений: 32
Заралик:

Gordankem:
Пустая страница Ошибка 404 и адрес не отрабатывает.
Я прописал это в чистом HTML в коде страницы.
Как отправить данные из формы к крипту PHP

Сработало только в явном виде
Вы шутите?))) прописывать в файл а не в адресную строку как у Вас.

Это не ответ.
Я код прописываю на странице, в движке сайта, когда включаю отображение HTML.
Ученик
Посетитель
small user social cms
Сообщений: 32
DeDja:

Gordankem:
как это скрыть?
Невозможно скрыть разницу между
sms_send.php и form_sms.php
(и шаблоне _default_).

В консоли Вашего сайта три ошибки -
Страница не найдена — 404
Нет файлов:

/graphics/loader.white.gif
/graphics/zoomout.cur
/graphics/outlines/drop-shadow.png
Вопрос в другом, как называются файлы обработки form_sms.php и sms_send.php или мой_файл.php я думаю не имеет значения.
Главное как к нему прописать обращение без указания явного пути. В редакторе админки <?php ?> походу не воспринимается как код.
Основной вопрос прописать обращение без указания явного пути?
Ученик
Посетитель
small user social cms
Медаль
Сообщений: 551
Gordankem:
Основной вопрос прописать обращение без указания явного пути?
Здесь: https://instantcms.ru/forum/thread32436-1.html#318005
И Вам следует обеспечить наличие соответствующего файла с расширением php (form_sms.php)
в соответствующем каталоге шаблона по умолчанию _default_ (а не _montaj_).

Gordankem:
Но это как бы небезопасно считается вроде
Откуда взято вроде? С потолка.
Посетитель
small user social cms
Медаль
Сообщений: 290
Как вариант.
В форме указать путь явно. А вот в файле обработчике form_sms.php фильтровать то, что пришло с POST запросом.
Боятся стоит того, что ваш скрипт будет работать и с некорректными данными. К примеру, вам в поле name загрузят пару томов Л.Толстого.
Редактировалось: 1 раз (Последний: 23 октября 2019 в 13:43)
Посетитель
small user social cms
Сообщений: 32
DeDja:

Gordankem:
Основной вопрос прописать обращение без указания явного пути?
Здесь: https://instantcms.ru/forum/thread32436-1.html#318005
И Вам следует обеспечить наличие соответствующего файла с расширением php (form_sms.php)
в соответствующем каталоге шаблона по умолчанию _default_ (а не _montaj_).

Gordankem:
Но это как бы небезопасно считается вроде
Откуда взято вроде? С потолка.

Два вопроса насчёт работы с шаблоном.
Есть ли ограничение в админке движка на отработку PHP кода?
Например
Код PHP:
  1. <form class="contact_form_phone" method="post" action="/templates/_мойШаблон_/special/мой_файл.php">
Второй вопрос почему если явно прописать путь, то доступ к файлу из
Код PHP:
  1. _мойШаблон_/special/
я получаю ?
Редактировалось: 1 раз (Последний: 23 октября 2019 в 14:44)
Ученик
Посетитель
small user social cms
Сообщений: 32
@IamB:

Как вариант.
В форме указать путь явно. А вот в файле обработчике form_sms.php фильтровать то, что пришло с POST запросом.
Боятся стоит того, что ваш скрипт будет работать и с некорректными данными. К примеру, вам в поле name загрузят пару томов Л.Толстого.
Насчёт безопасности формы я продумал
$tel = $_POST['tel']; //Поле из формы имя
$text = $_POST['text']; //Поле из формы телефон
$tel = htmlspecialchars($tel); //функция преобразования специальных символов для защиты
$text = htmlspecialchars($text);
$tel = urldecode($tel); //декодирование URL адеса в случае прописывания его в поле формы
$text = urldecode($text);
$tel = trim($tel); //удаление пробелов в начале и в конце строки
$text = trim($text);

Что ещё можно добавить для безопасности получения данных из формы?
Ученик
Посетитель
small user social cms
Медаль
Сообщений: 290
Пошёл бы другим путём.
1. Проверял бы длину строки и ограничил бы её 30 символами для имени и ещё меньше для телефона. Не соответствует - досвидос.
2. Проверил бы поле телефон регулярным выражением, там должны быть только цифры и +. Не соответствует - досвидос.
3. Проверил бы поле Имя регулярным выражением, там должны быть только символы русского, латинского алфавита, тире и пробел. Не соответствует - досвидос.
Далее дальнейшая логика вашего скрипта.
Редактировалось: 3 раз (Последний: 23 октября 2019 в 15:46)
В начало страницы
Предыдущая темаСледующая тема Перейти на форум: