Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > Передача post в system


Автор: Another 9.5.2009, 09:41
Код:
Код

<?php
include("config.php");

$start=system($php." ".$dir."start.php");
if(!$start)
echo"Ошибка запуска!";
else
echo"Процесс начался!";
?>

Тут start.php запускается... А как ему передать все post запросы, которые были переданы данному скрипту?

Автор: NLspieler 9.5.2009, 09:44
Не совсем понятен вопрос, что ты подразумеваешь под запросами, переданными скрипту через POST?
Все, которые когда - либо были переданы, или переданные в данный момент?

Как они передаются? Через форму?


Автор: gta4kv 9.5.2009, 10:19
Как хотите так и передавайте =)

Код

$query = '?';
foreach( $_POST as $value )
{
    $query .= $value . '|';
}


А потом в start.php разбивайте строку с помощью http://php.net/explode.

Добавлено через 2 минуты и 32 секунды
Ну или http://php.net/base64_encode + http://php.net/JSON

Автор: Another 9.5.2009, 10:24
Ну, с таким успехом можно и GET запросы выполнить...
NLspieler, передаются POST запросы через форму - скрипту 1(приведен выше), он в свою очередб пускает в процесс скрипт 2(start.php). Нужно, что б все POST запросы к скрипту 1 передались и скрипту 2(start.php).

Автор: gta4kv 9.5.2009, 10:26
Я написал как, передать в system форму (POST-запрос) у вас не получится.

Автор: Another 9.5.2009, 10:37
А через GET можно же выполнять скрипты в фоновом процессе?
Имею в виду так - system($php." ".$dir."start.php?гетзапросы_тут");
То есть я хочу передать геты, потом через extract превратить в переменные, а там все посты переиминовать в переменные.

Автор: gta4kv 9.5.2009, 10:46
А смысл вообще в извращенствах?

Код

header('Location: start.php?mycoolparms=lololol');

Автор: NLspieler 9.5.2009, 11:01
Another, я бы на твоем месте запустил бы сессию,
 в первом скрипте засунул бы POST туда:

Код

$_SESSION['post'] = $_POST ;


Потом, во втором скрипте, извлек бы эти данные. 

Код

$POST_iz_1skripta = $_SESSION['post'] ; 


Для активации сессии, в начале каждого скрипта пишешь 

Код

<?php
session_start();
?>



Другой вариант.
А еще не забудь, что в html можно прописать: 
Код

<form action="other_skript.php" method="post">


Тогда данные отошлются этому other_skript.php скрипту и соответсвенно в нем будут доступны соответствующие $_POST данные


Автор: Another 9.5.2009, 11:14
Это я знаю... Просто думал, можно ли пост запросы передать... Мне всётаки наверное легче через GET это осуществить...

Добавлено через 39 секунд
А какой session_start(); если скрипт в фоновоп процессе будет работать...

Добавлено через 53 секунды
Там браузера нет...

Автор: NLspieler 9.5.2009, 11:16
Ну раз знаешь, зачем тогда стремишься все усложнить?
Делай как знаешь и проблем не будет!

Автор: Another 9.5.2009, 11:22
Просто мало знаю, хочу знать больше))

Автор: enof 9.5.2009, 15:14
Цитата(Another @  9.5.2009,  10:41 Найти цитируемый пост)
echo"Процесс спама начался!";

Почему большинство спамеров такие тупые?
man php и будет счастье, там все написано, в консоли можно заполнить $_POS перед запуском скрипта.
Цитата(Another @  9.5.2009,  10:41 Найти цитируемый пост)
$start=system($php." ".$dir."start.php");

Это так в фоне у вас запускается? smile

Добавлено через 56 секунд
Да вы наверное еще и под виндой?

Автор: Sentox 10.5.2009, 00:03
Цитата

Да вы наверное еще и под виндой? 


ага  smile  и Я

Автор: enof 10.5.2009, 00:48
Sentox,  это вы ч кему? ТС хочет многопоточность реализовать через запуск приложений в фоне. Винда так не умеет, поэтому я и спросил насчет ОС. К тому же тс еще и не в фоне пытается запустить.

Добавлено через 19 секунд
Я уже боюсь читать ваш третий пост в соседней теме.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)