• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

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

    Запись на курс до 25 апреля. Получить промодоступ ...

Curl и Gd - как проще?

  • Автор темы z41
  • Дата начала
Z

z41

необходимо скачать графический файл, обязательно с помощью curl. А потом работать с ним с помощью gd. Есть ли какие-то варианты, как это можно осуществить без промежуточного временного файла?
 
G

GOsha

Фигассе, а вы маньяк, батенька, это ж нафига вам такое? А? Кста, почему бы вам не забрать напрямую файл, а именно курлом?
 
Z

z41

Да, маленько маньяк :eek: А курлом по одной причине - заголовки сначала кой-какие отослать надо :(
 
T

TT.

А почему бы не получить файл так:
Код:
function t3_fileopen($server,$port,$path,$server_url,$data,$second)
{
$contents = '';
$fp = @fsockopen($server,$port, $errno, $errstr, $second);
if($fp)
{
if(substr($server,0,6)=="ssl://")$server = substr($server,6);

$write = "POST $path HTTP/1.0\r\n";
$write.= "Host: $server\r\n\r\n";
$write.= "Referer: $server_url\r\n";
$write.= "Content-type: application/x-www-form-urlencoded\r\n";
$write.= "Content-length: " . strlen($data) . "\r\n";
$write.= "\r\n";
$write.= "$data\r\n";
$write.= "\r\n";

fwrite($fp, $write);

while (!feof($fp))
{
$contents .= fread($fp, 8192);
}

$vis = false;

for($i=5;$i<strlen($contents);$i++)
{
if(substr($contents,$i-3,4)=="\r\n\r\n")
{
$vis=true;
$contents = substr($contents,$i+1);
$i = strlen($contents);
}
}
fclose($fp);
}
else
{
$contents = "";
}

return $contents;
}

$file = t3_fileopen('domain.com',80,'/image','my-server.com','login=admin&pass=password',5);
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!