Як я можу надіслати дані POST на URL-адресу в PHP (без форми)?
Я збираюся використовувати його для надсилання змінної для заповнення та подання форми.
Як я можу надіслати дані POST на URL-адресу в PHP (без форми)?
Я збираюся використовувати його для надсилання змінної для заповнення та подання форми.
Відповіді:
Якщо ви хочете розмістити дані на URL-адресі з самого PHP-коду (без використання HTML-форми), це можна зробити за допомогою curl. Це буде виглядати так:
$url = 'http://www.someurl.com';
$myvars = 'myvar1=' . $myvar1 . '&myvar2=' . $myvar2;
$ch = curl_init( $url );
curl_setopt( $ch, CURLOPT_POST, 1);
curl_setopt( $ch, CURLOPT_POSTFIELDS, $myvars);
curl_setopt( $ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt( $ch, CURLOPT_HEADER, 0);
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec( $ch );
Це надішле змінні повідомлення на вказану URL-адресу, а те, що повертає сторінка, буде в $ response.
CURLOPT_FOLLOWLOCATION
, щоб щось докласти , CURLOPT_HEADER
і CURLOPT_RETURNTRANSFER
зробити? Я вважаю за краще не копіювати код, якого я не повністю розумію.
$url
має a, $
тому що в php саме так ви вказуєте змінну? Де ви проводите межу? "... щоб не отримувати більше запитань" - це не ставлення когось, хто досяг успіху в самонавчанні, особливо програмуванні.
Без курсу, який ви можете використовувати в php5
$url = 'URL';
$data = array('field1' => 'value', 'field2' => 'value');
$options = array(
'http' => array(
'header' => "Content-type: application/x-www-form-urlencoded\r\n",
'method' => 'POST',
'content' => http_build_query($data),
)
);
$context = stream_context_create($options);
$result = file_get_contents($url, false, $context);
var_dump($result);
Ваше запитання не є особливо зрозумілим, але якщо ви хочете надіслати дані POST на URL-адресу без використання форми, ви можете використовувати fsockopen або curl.