Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
|

24.12.2008, 16:57
|
|
Участник форума
Регистрация: 11.12.2005
Сообщений: 160
Провел на форуме: 745130
Репутация:
159
|
|
забиваешь в гугл, первая ссылка http://i-vd.org.ru/books/php/forms.shtml довольно подробно все расписанно
|
|
|

24.12.2008, 17:12
|
|
Участник форума
Регистрация: 16.09.2006
Сообщений: 139
Провел на форуме: 513709
Репутация:
144
|
|
Меня не совсем правильно поняли!
Нужно чтото вроде этого только я не понимаю как передать переменные в моем случае:
Код:
<?
$url = "http://test.ru/patch/file.php?var=23&var2=54"; // это адрес, по которому скрипт передаст данные методом POST. Как видно, здесь указаны переменные, которые будут переданы через GET
$parse_url = parse_url($url); // при помощи этой функции разбиваем адрес на массив, который будет содержать хост, путь и список переменных.
$path = $parse_url["path"]; // путь до файла(/patch/file.php)
if($parse_url["query"]) // если есть список параметров
$path .= "?" . $parse_url["query"]; // добавляем к пути до файла список переменных(?var=23&var2=54)
$host= $parse_url["host"]; // тут получаем хост (test.ru)
$data = "var3=test&var4=".urlencode("еще тест"); // а вот тут создаем список переменных с параметрами. Эти данные будут переданы через POST. Все значения переменных обязательно нужно кодировать urlencode ("еще тест")
$fp = fsockopen($host, 80, $errno, $errstr, 10);
if ($fp)
{
$out = "POST ".$path." HTTP/1.1\n";
$out .= "Host: ".$host."\n";
$out .= "Referer: ".$url."/\n";
$out .= "User-Agent: Operan";
$out .= "Content-Type: application/x-www-form-urlencoded\n";
$out .= "Content-Length: ".strlen($data)."\n\n";
$out .= $data."\n\n";
fputs($fp, $out); // отправляем данные
// после отправки данных можно получить ответ сервера и прочитать информацию выданную файлом, в который отправили данные...
// читаем данные построчно и выводим их. Конечно, эти данные можно использовать по своему усмотрению.
while($gets=fgets($fp,2048))
{
print $gets;
}
fclose($fp);
}
?>
|
|
|

24.12.2008, 17:42
|
|
Участник форума
Регистрация: 12.03.2008
Сообщений: 254
Провел на форуме: 12333903
Репутация:
238
|
|
У меня есть несколько вопросов.
1.Вопшем есть один сайт,к нему скрипт должен коннектится через file_get_contents вопшем вопрос таков,как делать чтобы в скрипте были задны куки для етого сайта,и он их использовал для етого сайта,и чтобы когда с сайта возврашались новые данные в куки то они тоже начинали использоватся,толи они сохранялись бы отдельно и использовались толи времмено гдето,ето уже как удобнее будет...
2.Как когда к сайту через file_get_contents коннектитсо,и на странице есть поля с пост запросом,то при отсылке их они же отсылаются как бы в етот скрипт мой,а не на етот сайт,и на сайт никакие данные не приходят,как ето можно исправить,чтобы загружался скрипт но и данние в POST запросе отсылались на сервер??
Последний раз редактировалось Mixon; 24.12.2008 в 19:55..
|
|
|

24.12.2008, 17:55
|
|
Участник форума
Регистрация: 12.03.2008
Сообщений: 254
Провел на форуме: 12333903
Репутация:
238
|
|
ChaaK,ты бы хотя бы написал,к какомму ето вопросу и кому ето вопше ты написал,есле ты ето мне то думаю ко второму,так есле ты пример дал,так уже весь бы скрипт выложил бы,вот например ета строчка
"content" => $req,
етой переменной в етой части кода вопше нету,а что в ней неизвестно....
|
|
|

24.12.2008, 18:07
|
|
Познавший АНТИЧАТ
Регистрация: 01.06.2008
Сообщений: 1,047
Провел на форуме: 5321514
Репутация:
3313
|
|
Сообщение от Mixon
ChaaK,ты бы хотя бы написал,к какомму ето вопросу и кому ето вопше ты написал,есле ты ето мне то думаю ко второму,так есле ты пример дал,так уже весь бы скрипт выложил бы,вот например ета строчка
"content" => $req,
етой переменной в етой части кода вопше нету,а что в ней неизвестно....
http://php.ru/manual/php/html/function.stream-context-create.html
кури
В результате получится:
PHP код:
<?php
$opts = array(
'http'=>array(
'method'=>'POST',
'header'=>"Cookie: aaa=cookie",
'content'=>'somth_post=1234'
)
);
$context = stream_context_create($opts);
echo file_get_contents('http://127.0.0.1/index.php',0,$context);
?>
объясню:
есть массив opts с дополнительными пакетами, внутри него - http - заголовки(т.е данные передающиеся по http протоколу).
method отвечает за метод, тобишь GET/POST/HEAD etc.
header - все дополнительные заголовки разделенные между собой \r\n (10 и 13 символ ASCII кода).
content - это данные которые ты передаешь серверу, т.е post ну или любые другие. В данном случае post.
Затем, мы записываем функцией stream_context_create в переменную с ресурсом - $context, затем в параметрах file_get_contents(третий параметр) добавляем этот ресурс.
Понятно?
P.S Без знаний http-протокола нечего соваться, куда не следует. Читай мануалы/RFC
Последний раз редактировалось ChaaK; 25.12.2008 в 21:04..
|
|
|

24.12.2008, 19:22
|
|
Постоянный
Регистрация: 30.08.2007
Сообщений: 773
Провел на форуме: 3069349
Репутация:
808
|
|
Сообщение от ChaaK
method отвечает за метод, тобишь GET/POST/COOKIE etc.
Метод COOKIE?
|
|
|

24.12.2008, 19:59
|
|
Участник форума
Регистрация: 12.03.2008
Сообщений: 254
Провел на форуме: 12333903
Репутация:
238
|
|
Сообщение от ChaaK
PHP код:
'header'=>"Cookie: aaa=cookie",
А вот тут можно по подробнее, Cookie: ето обязательный аргумент? и как есле нужно несколько разных значений вставить,чем розделять? Да и я писал чтобы когда сервер есче высылает новые куки то он их принемал,и начинал использовать и их...
Последний раз редактировалось Mixon; 24.12.2008 в 20:17..
|
|
|

24.12.2008, 20:56
|
|
Познавший АНТИЧАТ
Регистрация: 01.06.2008
Сообщений: 1,047
Провел на форуме: 5321514
Репутация:
3313
|
|
Не обязательный это заголовок, но если тебе нужно их отправить, то без cookie не обойтись.
Формат такой:
Параметр1=значение1;парамет р2=значение2;
Ну и т.д через ";"
Регулярка для вытаскивания кук:
#Set-cookie: (.*?);#uism
|
|
|

25.12.2008, 13:08
|
|
Постоянный
Регистрация: 07.03.2008
Сообщений: 479
Провел на форуме: 791766
Репутация:
61
|
|
А какие переменные нужно проверять и как?
На сайте нет ничего такого что пользователь вводит, у него есть доступ только к строке браузера....вот там он только может изменить переменную.
|
|
|

25.12.2008, 13:10
|
|
Участник форума
Регистрация: 11.05.2008
Сообщений: 202
Провел на форуме: 420713
Репутация:
104
|
|
PHP код:
<?php
function replace_num($num )
{
$from = explode(",",$num);
$to = array("I","II","III","IV","V","VI","VII","VIII","IX");
$as = str_replace($from,$to,$from);
$ret = implode(".", $as);
return $ret;
}
$num = "1,2,3,4,5,6,7,8,9";
echo replace_num($num) ;
?>
как попроще это можна сделать?
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|