PDA

View Full Version : سوال: ذخیره عکیس



rash44
سه شنبه 27 اسفند 1387, 17:10 عصر
سلام دوستان
من 1 فرم ثبت نام دارم که کاربر باید عکسش هم وارد کنه
الان نمی دونم چه طور عکس کاربر رو ثبت کنم و بعد از اینکه عکسش ثبت شد چه طوری از بانک بیرون بکشم و توی قسمت مربوط به خودش نشون بدم
1 کی از دوستان گفت که بهتره عکس رو اول 1 جائی آپدیت کنی بعد آدرسش رو توی بانک ثبت کنی
لطفا راهنمائی کنید
سرچ هم کردم ولی چیزی پیدا نکردم

mithridates
سه شنبه 27 اسفند 1387, 17:21 عصر
دوستت درست گفته راحت ترین کار اینکه یک فولدر روی هاست باز باشه فایل هارو بریزی روش بعد لینک رو ذخیره کنی ولی اگه حجم داده ها برات مهم نیست میتونی متغیر از نوع داده باینری و ... تعریف کنی.

اینترنت search کن پیدا میکنی نمونه کد

Yousha
سه شنبه 27 اسفند 1387, 19:31 عصر
سلام،
این کار که روی هاست Upload کنید بعد آدرس فایل رو در Database ثبت کنید اشتباه و خطرناکه!
شما باید با فرم Upload تصویر رو در یک فیلد Blob/Bin در Database ذخیره کنید. بعد از اونجا فراخانیش کنید.

__ziXet__
سه شنبه 27 اسفند 1387, 19:43 عصر
سلام،
این کار که روی هاست Upload کنید بعد آدرس فایل رو در Database ثبت کنید اشتباه و خطرناکه!
شما باید با فرم Upload تصویر رو در یک فیلد Blob/Bin در Database ذخیره کنید. بعد از اونجا فراخانیش کنید.
چیش مشکل داره مگه؟

yaqubian
سه شنبه 27 اسفند 1387, 19:52 عصر
دوست عزیز Yousha
فکر نمی کنید حجم DBتون خیلی وحشتناک می شه!!!!
ذخیره کردن عکس در DB اصلا کار عاقلانه ای نیست.
موفق باشید

Yousha
سه شنبه 27 اسفند 1387, 20:46 عصر
دوست عزیز Yousha
فکر نمی کنید حجم DBتون خیلی وحشتناک می شه!!!!

بله، ولی نسبت به این گفتم که: ایشون میگن برای ذخیره عکس کاربر...
آقای Rash44 اگر حجم تصاویر زیاده حق با Yaqubian عزیزه. در همون هاست Upload کنید(فقط چک کردن تصاویر یادتون نره!!)
تشکر .

امید امرایی
سه شنبه 27 اسفند 1387, 21:53 عصر
و البته روش بهتر که هم مشکل حجم پایگاه داده و هم امنیت رو حل می کنه استفاده از لینک دهی namesake به عکس هاست.

طبیعتا هر کاربر یا موضوعی که عکس بهش مربوط می شه باید دارای کلید یکتایی جهت شناسایی باشه


ID = 1
username= Someuser
با این حساب شما نیاز به ذخیره کردن هیچ لینکی ندارید.

مثال:


<img src="pic_folder/<?php echo $userid; ?>.jpg"/>
تنها کار اینکه که در زمان بارگذاری عکس ها رو به همین شناسه یکتا تغییر نام بدید

Alen
سه شنبه 27 اسفند 1387, 22:39 عصر
سلام دوستان ، میشه یه کد ساده از نحوه ذخیره عکس تو db و نیز بازیابی اون لطف کنید؟
ممنون میشم

Yousha
سه شنبه 27 اسفند 1387, 23:47 عصر
سلام،


Alen:
سلام دوستان ، میشه یه کد ساده از نحوه ذخیره عکس تو db و نیز بازیابی اون لطف کنید؟
ممنون میشم

عزیز زحمت جستجو به خودتون نمی دید؟
...
یک Table با نام Tbl_Images درست کنید. یک Field هم با نام Fld_Identity از نوع Integer ده رقمی درست کنید. یک Field هم با نام Fld_Image از نوع Blob درست کنید. فایل رو بعد از Upload بخونید(با fopen و fread) و در یک متغیر قرارش بدید، بعد Insert کنیدش...
برای فراخانی هم به این شکل عمل کنید: مثال:


<?php
$_Int_Identity= 1;
$_Rsc_Result= mysql_query("SELECT `Fld_Image` FROM `Tbl_Images` WHERE `Fld_Identity`= '" . $_Int_Identity . "';") or @exit(mysql_error());
$_Ary_Row= mysql_fetch_array($_Rsc_Result);
mysql_close();
header('content-type: image/jpeg');
echo($_Ary_Row['Fld_Image']);
?>

...
در ضمن باید برای سوالتون یک مبحث جدید باز می کردید...