Есть ли способ отправить данные POST без использования веб-формы? Я работаю с сторонним платежным процессором, и у меня есть возможность вручную отправить платеж, но данные должны быть отформатированы в формате POST.
Я планирую запустить свой сценарий как задание CRON, и поскольку он автоматизирован, пользовательский ввод не осуществляется через представление веб-формы.
Заранее спасибо.
попробуйте CURL
http://php.net/manual/en/book.curl.php
//set POST variables $url = 'http://domain.com/get-post.php'; $fields = array( 'lname' => urlencode($last_name), 'fname' => urlencode($first_name), 'title' => urlencode($title), 'company' => urlencode($institution), 'age' => urlencode($age), 'email' => urlencode($email), 'phone' => urlencode($phone) ); //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 connection curl_close($ch);
Вы можете использовать расширение cURL или даже file_get_contents()
с настраиваемым контекстом.