запуск PHP без кнопки

Тема в разделе "PHP", создана пользователем Enamy, 17 дек 2016.

  1. Enamy

    Enamy

    Регистрация:
    17 дек 2016
    Сообщения:
    0
    Симпатии:
    0
    Отправляю в пхп с моей ХТМЛки данные методом пост, после этого открывается страница с этим ПХП на которой пусто и только кнопка "ОК" по нажатии которой данные идут дальше... Как можно сделать чтобы файл ПХП исполнялся автоматически? Т.е. чтобы кнопку ненадо было нажимать, сразу как только данные пришли на ПХП он исполнялся и отправлял данные дальше... Если просто убрать эту кнопку(удалить строчку с инпут сублимит) то тупо открывается пуста страница и вообще ничего не исполняется... В данном случае меня бы даже устроило если бы открывалась страница с надписью Loding... на 1-2 сек и потом данные обрабатывались и шли дальше...
    Подскажите пожалуйста как это можно сделать.
    Вот код ПХП:

    <?
    // данные со страницы пополнения
    $tm=getdate(time()-1*3600); //текущее время
    $time="$tm[mday].$tm[mon].$tm[year] $tm[hours]:$tm[minutes]:$tm[seconds]"; // форматирование времени
    $username = $_POST["username"]; // уникальный номер
    $server = $_POST["server"]; // сервер
    $name = $_POST["name"]; // введенное имя
    $gold = $_POST["gold"]; // сумма пополнения
    $mrh_login = "login"; // логин
    $out_summ = "$gold"; // сумма заказа
    $inv_id = 0; // номер заказа(0 - авто)
    $mrh_pass1 = "pass1"; // пароль #1
    $inv_desc = "$name, $server, $gold"; // описание заказа
    // формирование подписи
    $crc = md5("$mrh_login:$out_summ:$inv_id:$mrh_pass1:");
    $res = " username=$username\n server=$server\n name=$name\n gold=$gold\n time=$time\n";
    file_put_contents('/usr/share/content/orderinfo.log', $res."\n", FILE_APPEND);
    print
    "<html>".
    "<form action='https://example.ru' method=POST>".
    "<input type=hidden name=MerchantLogin value=$mrh_login>".
    "<input type=hidden name=OutSum value=$out_summ>".
    "<input type=hidden name=InvId value=$inv_id>".
    "<input type=hidden name=Description value='$inv_desc'>".
    "<input type=hidden name=SignatureValue value=$crc>".
    "<input type=submit value=Ok>".
    "</form></html>";
    ?>
    --- Добавлено, 18 дек 2016 ---
    <script type="text/javascript">
    document.forms["ИМЯ_ФОРМЫ"].submit();
    </script>
    нашел решение, вставить в конце после пхп, кнопку из принта удалить удалить...
     
  2. barsulka

    barsulka

    Регистрация:
    20 янв 2017
    Сообщения:
    2
    Симпатии:
    0
    Как я понимаю, вся проблема - в формировании md5. Правильных вариантов два
    1. В "Вашей ХТМЛке" формировать md5 с помощью js и сразу отправлять на example.ru
    2. В вышеуказанном скрипте вместо формирования html-формы фоном отправить запрос с помощью curl().

    Существование подобного скрипта-прослойки в будущем приведет к проблемам.
     
  3. Loki_Dex

    Loki_Dex

    Регистрация:
    19 янв 2017
    Сообщения:
    2
    Симпатии:
    0
    PHP файл исполняется сразу же, как только браузер его открывает, то есть весь php код при открытии страницы сразу же будет выполнен.
    Грубо говоря, если Вы сразу же запустите тот файл который выполняется после кнопки "ок", то код будет выполнен.