PDA

View Full Version : تصاویر عجیب!!! چطوری اینطوری درست کنم؟



ehsanmoosavi
دوشنبه 10 فروردین 1394, 17:14 عصر
سلام، نمیدونم با سرویس میلوزی آشنایی دارین یا نه! زیاد هم بهش کار ندارم...
مهم اینه که، یه کاری کرده برام جالب بوده... چطوری این کارو کرده؟
آدرس تصویر رو ببینید :
http://milogy.com/img/cb13fe29ZmlsZXMvdXNlci8xOTRfYXZhdGFyLmpwZ3wxMjh8MT I4fDE=f1a92c5/?1427721924
این عکس پروفایل خودمه! ولی نه فرمت .jpg و این چیزا داره و کلا خیلی عجیبه!
اگه کسی بلده بگه لطفا
ممنون!

plus
دوشنبه 10 فروردین 1394, 18:25 عصر
تصویر JPEG هست. شما اگه در php با تابع header مقدار content-type رو برابر image/jpeg تعیین کنی و محتوای فایل عکس رو بخونی و به خروجی بدی میتونی یک چنین چیزی درست کنی.
البته برای تکملیش بهتره مقدار هدر content-disposition رو هم برابر


inline; filename=somename.jpeg

قرار بدی و مقدار content-length رو هم برابر طول فایل به بایت.

Pedram77
دوشنبه 10 فروردین 1394, 18:26 عصر
والا من یه بار تو PHP یه عکس درست کردم به جا اینکه ذخیرش کنم نمایشش دادم تو خود مرورگر. حدود دویست خط واسم چیز نوشت اینجوری!! :

ÿØÿàJFIFÿþ>CREATOR: gd-jpeg v1.0 (using IJG JPEG v90), default quality ÿÛC $.' ",#(7),01444'9=82<.342ÿÛC 2!!22222222222222222222222222222222222222222222222 222ÿÀXX"ÿÄ ÿĵ}!1AQa"q2‘¡#B±ÁRÑð$3br‚ %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyzƒ„ †‡ˆ‰Š’“”•–—˜™š¢£¤¥¦ ¨©ª²³´µ¶·¸¹ºÂÃÄÅÆÇÈÉÊÒÓÔ Ö×ØÙÚáâãäåæçèéêñòóôõö÷øù ÿÄ ÿĵw!1AQaq"2B‘¡±Á #3RðbrÑ $4á%ñ&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz‚ƒ„ …†‡ˆ‰Š’“”•–—˜™š¢£¤¥ §¨©ª²³´µ¶·¸¹ºÂÃÄÅÆÇÈÉÊÒÓ ÕÖ×ØÙÚâãäåæçèéêòóôõö÷øùú Ú?ñ]OS¿U¼D¾¹UYÜ°n

سورس برنامم این بود:



<html>
<head>
<title>GD2</title>
</head>
<body bgcolor="white">
<?PHP
$im = ImageCreate(600,600);
$red = ImageColorAllocate($im,255,0,0);
$blue = ImageColorAllocate($im,0,0,255);
$green = ImageColorAllocate($im,0,255,0);
$black = ImageColorAllocate($im,0,0,0);
$white = ImageColorAllocate($im,25,255,255);

ImageFill($im,0,0,$black);

ImageString($im,20,10,10,"..::Pedram Dehghanpour::..",$white);

for($i=20;$i<=600;$i+=20)
{
$color = ImageColorAllocate($im,rand(0,255),rand(0,255),ran d(0,255));
ImageRectangle($im,0+$i,0+$i,600-$i,600-$i,$color);
ImageArc($im,600/2,600/2,$i,$i,0,360,$color);
}

for($i=1;$i<=20;$i++)
{
ImageLine($im,rand(0,600),rand(0,600),rand(0,600), rand(0,600),$white);
}


header("content_type : image/jpeg");
ImageJpeg($im);
?>
</body>
</html>

Tarragon
دوشنبه 10 فروردین 1394, 19:58 عصر
سلام
شما دیگه نیازی به نوشتن کد HTML ندارید. بدون اون بنویسید اوکی می شه.

Pedram77
دوشنبه 10 فروردین 1394, 22:44 عصر
سلام
شما دیگه نیازی به نوشتن کد HTML ندارید. بدون اون بنویسید اوکی می شه.

از برنامه نویسی بی نظم اصابم خورد میشه :قهقهه: چون پروژه ماله وبه حتما باید جناب HTML نوشته بشن :لبخندساده:

Tarragon
دوشنبه 10 فروردین 1394, 23:04 عصر
:|
خب شما بزارید:|
این عکس یه خروجی داره که ۲۰۰ خطه درست؟!
شما وقتی میاید یه سری خروجی بهش اضافه می کنید توجع دارید کار کنه؟! دوستان یه فاصله قبلش گذاشتن کار نکرده اون وقت شما می خوای کد HTML به کار ببری؟! فایل config رو چی کار می کنی؟ autoloader ها چی؟:|:|:|
من :|
استیون هاوکینگ :|
مهران مدیری :|
لیلا اوتادی :|
جیگر‌:|

ehsanmoosavi
دوشنبه 10 فروردین 1394, 23:57 عصر
عجب!!!
آقای plus ، میشه بطور کامل و از اول یه قطعه کد بعنوان مثال بنویسید تا بهتر درک کنم؟ ممنون!

دوستان دیگه هم ممنون! :)

plus
سه شنبه 11 فروردین 1394, 00:25 صبح
فرض کنید یک فایل با نام email.png در کنار فایل php دارین:


<?php
$mimeType = 'image/png';
$fileName = 'email.png';
$fileLength = filesize($fileName);
$file = fopen($fileName, "r") or die("Unable to open file!");
$content = fread($file, $fileLength);
fclose($file);
header('Content-Type: ' . $mimeType);
header('Content-Length: ' . $fileLength);
header('Content-Disposition: inline; filename=' . $fileName);
echo $content;
?>

نتیجه رو میتونید در http://chehraz.ir/images/email.php مشاهده کنید.

MMSHFE
سه شنبه 11 فروردین 1394, 14:41 عصر
از برنامه نویسی بی نظم اصابم خورد میشه :قهقهه: چون پروژه ماله وبه حتما باید جناب HTML نوشته بشن :لبخندساده:

این ربطی به بی نظمی نداره. اسکریپت شما داره یه عکس تولید میکنه نه یک سند HTML پس نباید چیزی بجز محتوای عکس برای مرورگر ارسال بشه.

ehsanmoosavi
سه شنبه 11 فروردین 1394, 17:01 عصر
ممنونم، اینو میدونستم plus جان!

میخوام بدونم این آدرس چجوری تشکیل شده :
http://milogy.com/img/cb13fe29ZmlsZXMvdXNlci8xOTRfYXZhdGFyLmpwZ3wxMjh8MT I4fDE=f1a92c5/?1427721924

این حتی تهش فرمت php هم نداره!

plus
سه شنبه 11 فروردین 1394, 23:25 عصر
اینکه درخواست‌های ارسال شده به سرور چطوری پردازش بشه، بسته به تنظیمات Web Server داره. برای مثال اینکه یک فایل با فرمت php‌ به صورت کد php پردازش بشه و یک فایل با فرمت jpeg به عنوان فایل Static به خروجی بره. برای تغییر این تنظیمات بسته به اینکه از چه WebServerی استفاده میکنید، باید به سراغ IIS‌ یا Apache برین. البته خود php هم امکاناتی در این زمینه داره. اینجا (http://php.net/manual/en/security.hiding.php) رو بررسی کنید.

MMSHFE
چهارشنبه 12 فروردین 1394, 12:36 عصر
این حتی تهش فرمت php هم نداره!

درمورد Rewrite Module توی Apache تحقیق کنید. با کمک این قابلیت میشه آدرسها رو تغییر داد. برای مثال میشه کاری کرد که آدرس یک صفحه خاص PHP بصورت html یا حتی بدون پسوند به نمایش در بیاد و لینکهای مناسب برای SEO تولید کرد.