Как перенаправить / выполнить 1 скрипт из другого скрипта PHP в обработчике IPN Paypal? - PullRequest
1 голос
/ 20 июля 2011

Я установил на своем сайте обработчик уведомлений PHP IPN Paypal, чтобы уведомлять меня о платежах через PayPal.У меня есть установка Joomla, которая использует сложный, некомментированный и недокументированный компонент для обработки заказов.

Я знаю, что мне нужно вызвать определенный сценарий PHP с серией аргументов после получения действительного IPN.Однако, поскольку это Joomla, у меня есть сценарий в виде:

/ index.php? Option = com_component & controller = contr

Хотя, очевидно, это не настоящий PHP-скрипт - как я говорю,тщательно продуманная структура в MVC.

Каков наилучший метод для вызова этого сценария?Я думал об использовании

header("Location: index.php?opt...."); 

, однако, учитывая, что у меня есть обработка до (без вывода) и, возможно, обработка после, я не уверен, что это лучший вызов.

Оценить этот вопрос довольно тупой, но любая помощь приветствуется!

Ответы [ 2 ]

1 голос
/ 22 июля 2011

Вы можете попробовать использовать CURL , если он установлен / включен на вашем сервере.

$ch = curl_init("path/to/your/script.php");

//Include your headers here
$headers = array('');

//Set the data you want to send, as an associative array.
$postData = array("foo" => "bar", 12 => true);

curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postData);
curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, 0);
$output = curl_exec($ch);
if($output == FALSE){
    // Error reporting
}
curl_close($ch);
0 голосов
/ 20 июля 2011

Вы не можете полагаться на PayPal, чтобы следовать вашему перенаправлению, или, по крайней мере, я бы не стал.

Как насчет включения php-скрипта, который вы хотите вызвать?

...