За последние 24 часа нас посетил 22581 программист и 1594 робота. Сейчас ищут 897 программистов ...

Передача данных между скриптами

Тема в разделе "PHP для новичков", создана пользователем iNEEdhLw, 21 май 2015.

  1. iNEEdhLw

    iNEEdhLw Новичок

    С нами с:
    22 окт 2014
    Сообщения:
    414
    Симпатии:
    0
    нужно передать значение переменной (оно не всегда одинаково, зависит от вывода из БД) из одного скрипта в другой, по нажатию на кнопку, т.е. нажал на кнопку - попадаем в указанный action формы и там имеем нашу переменную.
    пробовал так:
    resulted_offers.php:
    Код (PHP):
    1. <form method="POST" action="?action=handler">
    2.     <button id="tobox" name='buy'>Добавить в корзину и продолжить покупки</button>
    3.     <input type="hidden" name="offer_id" value="<?php $offer_id ?>">
    4. </form>
    handler.php:
    Код (PHP):
    1. if (isset ($_POST['buy']) ){
    2.     echo $_POST['offer_id'];
    3.     echo 123;
    4. } 
    output: 123
     
  2. osi322

    osi322 Активный пользователь

    С нами с:
    21 май 2015
    Сообщения:
    19
    Симпатии:
    0
    А в скрытом input значение valeu=''? попробуй вывести переменную через var_dump
     
  3. iNEEdhLw

    iNEEdhLw Новичок

    С нами с:
    22 окт 2014
    Сообщения:
    414
    Симпатии:
    0
    решил в resulted_offers.php прописать $_GET['offer_id'] = $offer_id;
    а в handler.php сделать вывод $_GET['offer_id'], однако в гете у меня нулл.
    почему?

    Добавлено спустя 3 минуты 16 секунд:
    в resulted_offers.php выводит всё, а в handler.php ... стоп, пустая строка.
     
  4. mr.akv

    mr.akv Активный пользователь

    С нами с:
    31 мар 2015
    Сообщения:
    1.604
    Симпатии:
    206
    эм. А отуда там быть гету, если отправляешь то постом?
    Код (Text):
    1. method="POST"
     
  5. osi322

    osi322 Активный пользователь

    С нами с:
    21 май 2015
    Сообщения:
    19
    Симпатии:
    0
    в resulted_offers.php, переменная $offer_id чему равна? где ты ее объявляешь? видимо он и метод передачи сменил..
     
  6. iNEEdhLw

    iNEEdhLw Новичок

    С нами с:
    22 окт 2014
    Сообщения:
    414
    Симпатии:
    0
    отправляю то я форму постом, но перед формой у меня в ГЕТ была занесена информация, которую я вывожу в другом скрипте в том случае, если если кнопку нажали.


    Код (PHP):
    1. $_GET['offer_id'] = $offer_id;
    2. <form method="POST" action="?action=handler">
    3.     <button id="tobox" name='buy'>Добавить в корзину и продолжить покупки</button>
    4. </form> 
    Код (PHP):
    1.                     
    2. if (isset ($_POST['buy']) ){
    3.     var_dump($_GET['offer_id']);} 
    Добавлено спустя 1 минуту 31 секунду:
    она равна строке, содержащей номер товара (1,2,3,4,5..), - в зависимости от того, какой товар просматриваешь. т.е. это айдишник из БД.
     
  7. osi322

    osi322 Активный пользователь

    С нами с:
    21 май 2015
    Сообщения:
    19
    Симпатии:
    0
    Код (Text):
    1.  
    2. <?php $offer_id='а так что будет'; ?>
    3. <form method="POST" action="?action=handler">
    4.     <button id="tobox" name='buy'>Добавить в корзину и продолжить покупки</button>
    5.     <input type="hidden" name="offer_id" value="<?php echo $offer_id ?>">
    6. </form>
    и
    Код (Text):
    1. if (isset ($_POST['buy']) ){
    2.     echo $_POST['offer_id'];
    3.     echo 123;
    4. }
     
  8. iNEEdhLw

    iNEEdhLw Новичок

    С нами с:
    22 окт 2014
    Сообщения:
    414
    Симпатии:
    0
    бл**ь, вот идиот) нужно было всего лишь додуматься добавить echo.
    вопрос решён, спасибо!