Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Передача GET параметров
 
 автор: trix   (25.06.2010 в 12:12)   письмо автору
 
 

Подскажите как можно передать GET параметры серверу, способ нашел, но почему то не работает


файл server.php

print $_GET[test];

файл client.php

$request = "123"; 

$context = stream_context_create(array('http' => array(
    'method' => "GET",
    'header' => "Content-Type: text/xml",
    'content' =>  http_build_query(array('test' => $request))
))); 

$fp = fopen('http://test.net/server.php', 'r', false, $context);
fpassthru($fp);
fclose($fp);


Что не так, в коде ? Страница скачивается, но параметр не передается !?

  Ответить  
 
 автор: maaxws   (27.06.2010 в 22:06)   письмо автору
 
   для: trix   (25.06.2010 в 12:12)
 

Есть неплохой пример отправки POST запросов с помощю PHP. Для тестирования возьмем тестовый файл test.php.

test.php


<?php
 
echo 'Name:'.$_POST['name'],"<br>",
'Surname:'.$_POST['surname'];

?>

Выводим post-переменные name и surname, а между ними <br>.

context.php


<?php

//создаем строку запроса из данных в массиве
$post http_build_query(
array(
'name'=>'Vasya',
'surname'=>'Pupkin'
)
);
//опции для создания контекста
$c_options = array(
//имя враппера - http
'http'=>array(
//метод - POST
'method'=>'POST',
//заголовки
'header'=>"Content-type: application/x-www-form-urlencoded\r\n".
"Content-length:".strlen($post),
//данные
'content'=>$post
)
);
//создаем контекст
$context stream_context_create($c_options);
//читаем файл с контекстом
$res file_get_contents('http://localhost/test.php',
false,$context);
//выводим результат
echo $res;
?>


Думаю, тут все ясно из комментариев.

  Ответить  
 
 автор: Trianon   (28.06.2010 в 00:14)   письмо автору
 
   для: trix   (25.06.2010 в 12:12)
 

GET-параметры запроса передаются не в теле сообщения, а в URI.
Независимо от того, GET.. это запрос, POST.. или вовсе даже HEAD

Сдается мне, аналогичный ответ здесь уже был дан. by Тень.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования