Всех друзей поздравляем с Новым годом! Всего вам самого наилучшего! Всех благ, здоровья а материальное приложится!
СКРИПТЫ alt htmlcssphpjsblog

Передаем массив в любую часть сайта.

Поддержи проект!!! smile

Передать массив на другую страницу - сколько способов есть передачи массива на другую страницу. Давайте рассмотрим - какие есть способы передачи массива на другую страницу, либо в любую часть сайта!?

Подробно о передаче массива по сайту..

  1. Подготовка массива для передачи на другую страницу.
  2. Как передать массив с помощью сессии?
  3. Передаем массив с помощью Метода
  1. Подготовка массива для передачи на другую страницу.

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

    Простой массив не интересен - давайте создадим ассоциативный - не будем подробно останавливаться на моменте создания массива:

    $id_page = 'example';

    $example_arr[$id_page][data] = date('d.m.Y H:i:s');

    $example_arr[$id_page][id] = '97cbe03a092845230984578a9b65bd4d';

    $example_arr[$id_page][title_page] = 'пример заголовка';

    $example_arr[$id_page][text] = 'пример текста';

    Выведем массив, который будем передавать!

    Теперь, давайте посмотрим на выше приведенный массив! Выведем его с помощью print_r

    echo '<pre>';;

    print_r($example_arr);

    echo '</pre>';

    Результат вывода массива, который будем передавать!

    Array

    (

    [example] => Array

    (

    [data] => 09.05.2021 02:17:22

    [id] => 97cbe03a092845230984578a9b65bd4d

    [title_page] => пример заголовка

    [text] => пример текста

    )

    )

  2. Как передать массив с помощью сессии?

    Теперь, когда у нас готов массив, нам нужна сессия и мы данный массив поместим туда, в сессию.

    Не мудрствуя лукаво, сессию назовем также, как и наш массив.

    $_SESSION[example_arr] = $example_arr;

    И поскольку в сессии находится массив, то мы его тоже будем выводить с помощью print_r, вот таким образом:

    print_r($_SESSION[example_arr]);

    Давайте его здесь прямо таки выведем, посмотрим, есть ли что-то в нашей сессии:

    Результат вывода передаваемого массива в сессии:

    Для проверки живого скрипта - перезагрузите страницу и обратите внимание на ячейку "data" - у неё есть показатель секунды...

    Array

    (

    [example] => Array

    (

    [data] => 09.05.2021 02:17:22

    [id] => 97cbe03a092845230984578a9b65bd4d

    [title_page] => пример заголовка

    [text] => пример текста

    )

    )

    Отлично... сессия прекрасно сработала и массив помещен в сессию !

    Теперь нам нужно получить данный массив где-то в другом месте... используя get

    нам понадобится ссылка типа:

    <a href='.$real_page.'?is_array=in_session>Отправь массив в другую часть сайта или другую страницу</a>
    Далее... нам понадобится некий код, не буду его рассказывать - там все просто... помещаем его в самое начало страницы, но после запуска сессии, на скрине этого нет, но поверьте... она запускается выше..., в другом файле...
    Эту картинку, скриншот, можно увеличить в отдельном окне нажмите по нему!Результат вывода передаваемого массива в сессии:

    И далее... после такой длительно подготовки - мы можем попробовать отправить массив с помощью сессии в другое место нашего сайта:

  3. Передаем массив с помощью Метода

    Весь код примера можно будет скачать в архиве.

    Для того, чтобы нам проделать аналогичную операцию, что описана выше - передать массив ан другую страницу или в любую другу часть, нам понадобится метод post и :два скрипта:

    Один отправить массив этим способом на другую страницу.

    А второй скрипт этот массив получит на другой странице!

    Массив будем передавать, что уже выше создали... давайте напомним его и выведем его здесь:

    Array

    (

    [example] => Array

    (

    [data] => 09.05.2021 02:17:22

    [id] => 97cbe03a092845230984578a9b65bd4d

    [title_page] => пример заголовка

    [text] => пример текста

    )

    )

    Один из вариантов... разобрать данный массив по ячейкам и на каждую ячейку создать свои input - но у данного способа есть один главный недостаток... при изменении количества ячеек - естественно нужно прописывать новый инпут, а если у вас 10 инпутов или количество инпутов переменное - в общем этот способ я гео даже рассматривать не буду... из-за совей ущербности.

    Что мы будем делать!?

    Мы преобразуем массив в строку и уже её спокойненько вернем массив на второй странице!

    Давайте уже приступать! Нам понадобится...

    Простая форма form

    И внутри один input с submit

    Еще в форме нам потребуется атрибут action с указанием страницы , куда будем посылать нам массив.

    <form method="post" action="адрес">
    <button name="submit" type="submit" value="здесь массив"></button>
    </form>

    Далее в value нам нужно поместить наш массив. Но прежде его нужно перегнать в строку с помощью serialize и... далее у вас возникнет ошибка кавычек...(вопрос на засыпку... почему!?), поэтому нам нужна другая функция str_replace, а вообще... лучше написать свою функцию, чтобы не использовать эти две... :

    Для замены я использовал "Æ" - это в принципе не важно, лишь бы элемент не повторялся в самом массиве, иначе массив получим кривой...

    function str_plus_serialize($value)
    {
    return str_replace('"', 'Æ', serialize($value) );
    }

    Давайте пропустим наш массив через данную функцию:

    a:1:{s:7:ÆexampleÆ;a:4:{s:4:ÆdataÆ;s:19:Æ09.05.2021 02:17:22Æ;s:2:ÆidÆ;s:32:Æ97cbe03a092845230984578a9b65bd4dÆ;s:10:Ætitle_pageÆ;s:31:Æпример заголовкаÆ;s:4:ÆtextÆ;s:25:Æпример текстаÆ;}}

    И нам понадобится страница на которой мы проделаем все те операции с функциями в обратном порядке... это довольно скучно см. второй файл в архиве...

    Весь код примера можно будет скачать в архиве.

    Итак...

    Живой пример отправки массива на другую страницу с помощью php:

    Для того, чтобы отправить массив на другую страницу нажмите кнопку ниже:


Последняя дата редактирования : 04.05.2021 23:56
//dwweb.ru/comments_1_5/include/img/hand_no_foto.png
no
no
Еще никто не прокомментировал! COMMENTS+   BBcode
аватар
🞨
Загрузить свой аватар
(max ширина, высота = 200px)

Подписаться + =
Теги:
Передать массив на другую страницу

Счетчик в график :

Построение гравиков
Основа для графика : счетчик посещаемости.
Последние комментарии :
Марат :
29/04/2021 01:46
Реанимирована страница о "шаблонах в DREAMWEAVER"!Эта программа была основной для редактирования моих сайтов на…
подробнее.
Марат :
23/04/2021 04:35
Страница обновлена - добавлен скрипт - всё в одном. Скачивание картинку по…
подробнее.
Марат :
13/04/2021 08:12
Во-первых пожалуйста!1). $new_array - был прописан оттого, что контент на сайте пишется на живых примерах. И часто…
подробнее.
Валерий :
13/04/2021 05:47
перебрал весь материал- во первых спасибоискал другое но понравился Ваш материалerror - или неточность 1. везде…
подробнее.
Марат :
08/04/2021 07:12
Сам афигеваю!
подробнее.