За последние 24 часа нас посетил 17271 программист и 1291 робот. Сейчас ищет 1571 программист ...

Попытка подружить PHP с SSI

Тема в разделе "Вопросы от блондинок", создана пользователем LesyaJJK, 20 сен 2016.

Метки:
  1. LesyaJJK

    LesyaJJK Новичок

    С нами с:
    20 сен 2016
    Сообщения:
    11
    Симпатии:
    0
    Есть сайт с SSI. Пытаюсь прикрутить к нему БД и маленькое окошечко с поиском. Все вроде ничего, НО при попытке прочесть данные формы с помощью $_REQUEST получаю пустые значения.

    ПОДРОБНЕЕ

    файл 2.phtml:
    PHP:
    1. <?
    2. $atn = $_REQUEST['a'];
    3. echo $atn;
    4. ?>
    файл 1.shtml
    PHP:
    1. <!--#include virtual="2.phtml" -->
    Вызываю: 2.phtml?a=123
    Выдает: 123

    Вызываю: 1.shtml?a=123
    Выдает:

    От SSI отказаться нельзя. Как получить значения передаваемых переменных ?
     
    #1 LesyaJJK, 20 сен 2016
    Последнее редактирование модератором: 22 сен 2016
  2. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    можно выполнить phpinfo() и поискать там
     
  3. LesyaJJK

    LesyaJJK Новичок

    С нами с:
    20 сен 2016
    Сообщения:
    11
    Симпатии:
    0
    Можно. Например, QUERY_STRING_UNESCAPED a=123\&b=456
    Только придется эти переменные потом извлекать и их у меня много, а хочется что-то попроще.
    --- Добавлено ---
    Нашла такое решение:
    HTML:
    1. <!--#set var="adr1" value="2.phtml?" -->
    2. <!--#set var="adr2" value="$adr1$QUERY_STRING" -->
    3. <!--#include virtual="$adr2" -->"
    Только это работает с Get , а Post похоже в пролете.
     
  4. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
  5. [vs]

    [vs] Суперстар
    Команда форума Модератор

    С нами с:
    27 сен 2007
    Сообщения:
    10.559
    Симпатии:
    632
    2.phtml можно подключать через php-функцию include(), тогда всё будет работать и это не нарушит работу SSI в 2.phtml.
     
  6. LesyaJJK

    LesyaJJK Новичок

    С нами с:
    20 сен 2016
    Сообщения:
    11
    Симпатии:
    0
    1) php-функции не работают в файлах shtml, поэтому используется SSI директива <!--#include virtual="2.phtml" -->
    2) в 2.phtml у меня SSI нет

    Вышеописанный мной пример вполне рабочий, только передаваемые при вызове 1.shtml?a=123 переменные не передаются в подключаемый скрипт 2.phtml, что странно. Но решение найдено. Спасибо.