Интеграция PayPal в проект CakePHP - PullRequest
0 голосов
/ 16 августа 2011

Это, вероятно, очень простой вопрос, но, прочитав мой путь по большей части веб-сайта PayPal и проконсультировавшись с несколькими учебными пособиями в Интернете, я не мудрый (ну, конечно, немного мудрее).

Я немного новичок, и хотя я несколько лет играл с php & html и т. Д., Я никогда не пытался что-то подобное. Я должен отметить, что я сделал несколько простых проектов CakePHP, так что я чувствую себя достаточно комфортно с этим, я думаю, также я не делаю это для коммерческого проекта, это просто, чтобы я мог учиться;)

Я пытаюсь создать приложение, которое требует, чтобы мои пользователи имели учетную запись PayPal. Имея это в виду, у меня есть страница регистрации, которая собирает электронную почту пользователей PayPal и пару других битов информации, связанных с моим сайтом. Затем я хочу использовать службу аутентификации PayPal https://www.x.com/community/ppx/authentication, чтобы убедиться, что у них есть учетная запись PayPal.

В документах говорится об отправке запросов и получении ответов, и это то, чего я раньше не делал, и это меня смущает.

Мое лучшее предположение, что у меня есть форма, которую заполняет мой пользователь, а затем нажимает кнопку "Отправить". Это подчиняется действию в моем контроллере пользователей, которое отправляет запрос - из того, что я могу собрать, это включает в себя выполнение $ this-> redirect (array ('action' => 'https://api -3tpaypal.com / nvp')); но я не уверен, как именно прикрепить различные параметры, которые предназначены для этого.

После этого у меня заканчиваются догадки. Я понятия не имею, как я получаю ответ или куда он идет, хотя я знаю, что, как только мне удастся его заполучить, мне нужно как-то проверить его, чтобы увидеть, был ли он успешным, прежде чем делать что-либо еще.

Я понимаю, что это, вероятно, то, что я должен действительно знать, но мне никогда не приходилось делать это раньше. Также я обещаю, что прочитал LOTS на сайте PayPal, но я все еще в замешательстве.

Если есть какие-нибудь мудрецы, которые хотят помочь начинающему программисту, я был бы очень признателен

Большое спасибо:)

Julia

1 Ответ

0 голосов
/ 16 августа 2011

Я не знаю, как работает Cake Framework, но в целом так работает API NVP.

  • Методы и параметры отправляются как часть самого URL, в основном как запрос HTTP GET, но также могут отправляться на сервер как HTTP POST. Incase of GET, формат URL похож:

http://domain.com/method_name/?param1=value1&param2=value2&param2=value3.

  • В случае HTTP POST параметры не являются частью URL, а отправляются отдельно. поэтому формат URL содержит какие-либо параметры.

Для работы с HTTP POST, вот пример использования curl

//set POST variables
$url = 'http://domain.com/method_name/';
$fields = array(
            'USER'=>urlencode('API_usernam'),
            'PWD'=>urlencode('API_password'),
            'SIGNATURE'=>urlencode('API_signature'),
            'VERSION'=>urlencode('version'),
        );

//url-ify the data for the POST
foreach($fields as $key=>$value) { $fields_string .= $key.'='.$value.'&'; }
rtrim($fields_string,'&');

//open connection
$ch = curl_init();

//set the url, number of POST vars, POST data
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_POST,count($fields));
curl_setopt($ch,CURLOPT_POSTFIELDS,$fields_string);

//execute post
$result = curl_exec($ch);

//close the connection

curl_close($ch);

//print result data from server
var_dump($result);

Более того, Curl Library довольно хорош. Я советую вам прочитать документацию и взять ее оттуда.

Надеюсь, это поможет

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...