Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   http. вопрос по пртоколу. (https://forum.antichat.xyz/showthread.php?t=40549)

x-treem 21.05.2007 18:41

http. вопрос по пртоколу.
 
долго искал, но так и нечего не нашёл. скажите, каким должен быть пакет серверу, что бы можно было закачать фаил.
то есть есть к примеру во всех шеллах опция "залить файл", и вот интересно было бы узнать, как же передаются эти данные.

Isis 21.05.2007 19:15

Вот в сорцах шелла посмотри =\

x-treem 21.05.2007 19:21

млин, ты не понял... надо сам ПАКЕТ протокола хттп. то есть его описание, а не просто код позволяющий закачивать файл=\

mr.The 21.05.2007 19:28

PHP код:

<?
///////////////////////
//$site адрес сайта вида www.google.com
//$mesto где лежит на сайте типа soft/fucking/1.rar
/////Coded by mr.The///
error_reporting (E_ALL);
set_time_limit(0);

if(!isset(
$_GET['site'])) {
echo 
"Ошибко!";
exit;
} else {
$site=$_GET['site'];
};
if(!isset(
$_GET['mesto'])) {
echo 
"Ошибко!";
exit;
} else {
$mesto=$_GET['mesto'];
};

   
// открыли соединение
   
$so fsockopen($site80, &$errno, &$errstr30);
   
// послали GET форму (простой URL + указание вирт. хоста)
   
fputs($so,"GET /".$mesto." HTTP/1.0\nHOST: ".$site."\n\n");

   
// читаем все, пока не наступит "конец заголовка" (т.е. начало документа)
   // если наступит, то со след. байта начнется документ
   
while(fgets($so,2048)!="\r\n" && !feof($so));

   unset(
$buf);
   
// читаем документ в переменную
   
while(!feof($so)) $buf.=fread($so,2048);
   
// Готово. В переменной $buf храниться скаченный документ (т.е. файл)
   // Максимум можно читать порциями по 64K-1байт

   // закрываем сокет
   
$name=strrev(md5($mesto.$site)).".file";
   
fclose($so);
   
// используем скаченный файл (в переменной) по назначению...
   
$f=fopen($name,"wb+");
   
fwrite($f,$buf,strlen($buf));
   
fclose($f);
   
flush();
   echo 
"Файл размером ".strlen($buf)." байт успешно закачан.<br>";
?>

вот примерно так.
коментариев мало. так шо спрашивай

GreenBear 21.05.2007 19:31

Цитата:

Сообщение от x-treem
млин, ты не понял... надо сам ПАКЕТ протокола хттп. то есть его описание, а не просто код позволяющий закачивать файл=\

а документацию слабо почитать? или в крайний случай перехватит и посмотреть его.. мда..

GreenBear 21.05.2007 19:32

Цитата:

/////Coded by mr.The///
что за маразм ставить копирайты на 3 строки кода?..

Isis 21.05.2007 19:41

Цитата:

Сообщение от mr.The
коментариев мало. так шо спрашивай

Мда....если тут мало комментариев, то мда =\
У тебя весь код засран в комментариях...надо было разобрались бы....
А так код то в 10 строках

Isis 21.05.2007 19:44

Буагага
PHP код:

if(!isset($_GET['site'])) {
echo 
"Ошибко!";
exit;
} else {
$site=$_GET['site'];
};
if(!isset(
$_GET['mesto'])) {
echo 
"Ошибко!";
exit;
} else {
$mesto=$_GET['mesto'];
}; 

Это что?)))))))))))
Вам прям нежалко точек с запятой.....
И вы затрахали с такими некрасивыми кодами =\
Код весь должен находиться от левой границы на расстоянии/t => Tab ...
И знаки равно красивее было бы отделать от переменыых пробелами....
Код от этого скорость не изменит , но станет намного понятен и красивее

mr.The 21.05.2007 21:37

Цитата:

что за маразм ставить копирайты на 3 строки кода?
тебе не всё равно?
Цитата:

Мда....если тут мало комментариев, то мда =\
я видел когда после каждой строчки.
Цитата:

Код весь должен находиться от левой границы на расстоянии/t => Tab ...
И знаки равно красивее было бы отделать от переменыых пробелами....
Код от этого скорость не изменит , но станет намного понятен и красивее
знаю.... просто мне когдато этот скрипт срочно нужен был. поэтому на красивости времени небыло

_Nikolas_ 21.05.2007 23:18

Цитата:

Сообщение от x-treem
долго искал, но так и нечего не нашёл. скажите, каким должен быть пакет серверу, что бы можно было закачать фаил.
то есть есть к примеру во всех шеллах опция "залить файл", и вот интересно было бы узнать, как же передаются эти данные.

Насколько я знаю это делается через multipart/form-data.
Вот ссылки по теме:
http://www.w3.org/TR/html4/interact/forms.html#h-17.13.4.2
http://www.15seconds.com/issue/001003.htm
http://www.cs.tut.fi/~jkorpela/forms/file.html


Время: 13:35