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

21.05.2007, 18:41
|
|
Участник форума
Регистрация: 08.11.2006
Сообщений: 167
Провел на форуме: 539434
Репутация:
54
|
|
http. вопрос по пртоколу.
долго искал, но так и нечего не нашёл. скажите, каким должен быть пакет серверу, что бы можно было закачать фаил.
то есть есть к примеру во всех шеллах опция "залить файл", и вот интересно было бы узнать, как же передаются эти данные.
|
|
|

21.05.2007, 19:15
|
|
Флудер
Регистрация: 20.11.2006
Сообщений: 3,316
Провел на форуме: 16641028
Репутация:
2371
|
|
Вот в сорцах шелла посмотри =\
|
|
|

21.05.2007, 19:21
|
|
Участник форума
Регистрация: 08.11.2006
Сообщений: 167
Провел на форуме: 539434
Репутация:
54
|
|
млин, ты не понял... надо сам ПАКЕТ протокола хттп. то есть его описание, а не просто код позволяющий закачивать файл=\
|
|
|

21.05.2007, 19:28
|
|
Познавший АНТИЧАТ
Регистрация: 30.04.2007
Сообщений: 1,206
Провел на форуме: 4778940
Репутация:
1257
|
|
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($site, 80, &$errno, &$errstr, 30);
// послали 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>";
?>
вот примерно так.
коментариев мало. так шо спрашивай
|
|
|

21.05.2007, 19:31
|
|
наркоман с медалью
Регистрация: 07.05.2005
Сообщений: 3,704
Провел на форуме: 19975136
Репутация:
4536
|
|
Сообщение от x-treem
млин, ты не понял... надо сам ПАКЕТ протокола хттп. то есть его описание, а не просто код позволяющий закачивать файл=\
а документацию слабо почитать? или в крайний случай перехватит и посмотреть его.. мда..
|
|
|

21.05.2007, 19:32
|
|
наркоман с медалью
Регистрация: 07.05.2005
Сообщений: 3,704
Провел на форуме: 19975136
Репутация:
4536
|
|
что за маразм ставить копирайты на 3 строки кода?..
|
|
|

21.05.2007, 19:41
|
|
Флудер
Регистрация: 20.11.2006
Сообщений: 3,316
Провел на форуме: 16641028
Репутация:
2371
|
|
Сообщение от mr.The
коментариев мало. так шо спрашивай
Мда....если тут мало комментариев, то мда =\
У тебя весь код засран в комментариях...надо было разобрались бы....
А так код то в 10 строках
|
|
|

21.05.2007, 19:44
|
|
Флудер
Регистрация: 20.11.2006
Сообщений: 3,316
Провел на форуме: 16641028
Репутация:
2371
|
|
Буагага
PHP код:
if(!isset($_GET['site'])) {
echo "Ошибко!";
exit;
} else {
$site=$_GET['site'];
};
if(!isset($_GET['mesto'])) {
echo "Ошибко!";
exit;
} else {
$mesto=$_GET['mesto'];
};
Это что?)))))))))))
Вам прям нежалко точек с запятой.....
И вы затрахали с такими некрасивыми кодами =\
Код весь должен находиться от левой границы на расстоянии/t => Tab ...
И знаки равно красивее было бы отделать от переменыых пробелами....
Код от этого скорость не изменит , но станет намного понятен и красивее
|
|
|

21.05.2007, 21:37
|
|
Познавший АНТИЧАТ
Регистрация: 30.04.2007
Сообщений: 1,206
Провел на форуме: 4778940
Репутация:
1257
|
|
что за маразм ставить копирайты на 3 строки кода?
тебе не всё равно?
Мда....если тут мало комментариев, то мда =\
я видел когда после каждой строчки.
Код весь должен находиться от левой границы на расстоянии/t => Tab ...
И знаки равно красивее было бы отделать от переменыых пробелами....
Код от этого скорость не изменит , но станет намного понятен и красивее
знаю.... просто мне когдато этот скрипт срочно нужен был. поэтому на красивости времени небыло
|
|
|

21.05.2007, 23:18
|
|
Новичок
Регистрация: 27.12.2006
Сообщений: 18
Провел на форуме: 105228
Репутация:
19
|
|
Сообщение от 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
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|