آره به نظر من هم ذخيره عکس تو ديتا بيس کار جالبي نيست هم درد سر داره هم مشکل:15:
بازم مثل هميشه عکس تو باز نميشه:8:
Printable View
آره به نظر من هم ذخيره عکس تو ديتا بيس کار جالبي نيست هم درد سر داره هم مشکل:15:
بازم مثل هميشه عکس تو باز نميشه:8:
این تصویری از پایگاه داده ام که تصویر در آن ذخیره کردم میباشد
---------- Post added at 07:18 PM ---------- Previous post was at 07:17 PM ----------
کد:http://forum.majidonline.com/attachment.php?attachmentid=70729&d=1319180059
دوست عزیز اونطور که من از عکست متوجه شدم شما خود عکس رو در دیتا بیس ذخیره نکردی و آدرس عکس که در اینجا upload/131.jpg هستش رو ذخیره کردی.
خوب ببین دوست عزیز شما فقط یه آدرسو ذخیره کردی مثلا آدم وقتی آدرس یه سایت یا آدرس یه صفحه از سایت خودشو ذخیره میکنه بهش سایز و تایپ میده؟
نمیدونم متوجه منظور من شدی یا نه ولی شما وقتی آدرس یه عکس رو ذخیره میکنید دیگه نیازی نیست که براش size و type تعریف کنید و باید باهاش مثل یک رشته کاراکتر رفتار کنید.
موقعی هم که میخواید اون عکس رو جایی از سایتتون نمایش بدید کافیه آدرسشو از تو دیتابیستون بخونید و داخل تگ
[PHP]<img src= "$image"/>[/PHP]
بزارید که در مثال بالا قبلش باید $image رو تعریف کنید مثلا قبلش باید بنویسید که
image$=select 'path' from ....
و الی آخر که دیگه اینارو فکر میکنم خودت میدونی.
اگه سوالی داشتی بپرس. امیدوارم تونسته باشم مشکلتو حل کنم.:20:
آره. اگر میخواید فقط آدرس عکس در پایگاه داده ذخیره بشه باید مثل یک نوشته ی معمولی ازش استفاده کنید!
فقط از پایگاه گرفته و همون طور که Golbarg73 گفتند بندازیدش روی صفحه. درست مثل یه مطلب یا پست.
با توجه به این کد تصویر نشان داده نمیشود مرورگر فقط یک کادر کوچک نشان میدهد
[PHP]<?php
// connect to mysql server
$link = mysql_connect('localhost', 'root', '');
if (!$link) {
die('Not connected : ' . mysql_error());
}
// connect to database server
$db_selected = mysql_select_db('admin', $link);
if (!$db_selected) {
die ('Database error : ' . mysql_error());
}
$sql = mysql_query("SELECT 'path' FROM image");
// the result of the query
// Header for the image
//header("Content-type: image/jpeg");
// echo mysql_result($result, 0,'imageData');
echo'<img src="$sql"/>';
?>
[/PHP]
دوست عزیز الگریتم شما مشکل داره شما جایی که آدرس رو نوشتید انتخاب کردید ولی نخوندینش!
یعنی بعد از تابع select باید یه تابع دیگه نوشته بشه به نام
mysql_fetch_assoc
البته مطمئن نیستم این تابع باشه!
دوستان اگه کسی میدونه لطفا کمک کنه.
من شخصا از رین تابع استفاده می کنم:
mysql_fetch_array
+
باید در کوئری انتخاب عکس از دیتابیس از WHERE هم استفاده کنید تا همه ی اطلاعات درون اون تیبل رو استخراج نکنه بلکه مثلا فقط آدرس عکسی که با آی دی فلان هست رو استخراج کنه.
کد را بدین صورت تغییر دادم بازهم مشکل حل نشد
[PHP]<?php
// connect to mysql server
$link = mysql_connect('localhost', 'root', '');
if (!$link) {
die('Not connected : ' . mysql_error());
}
// connect to database server
$db_selected = mysql_select_db('admin', $link);
if (!$db_selected) {
die ('Database error : ' . mysql_error());
}
$sql = mysql_query("SELECT 'path' FROM image where id=1");
// the result of the query
// Header for the image
//header("Content-type: image/jpeg");
// echo mysql_result($result, 0,'imageData');
while($row = mysql_fetch_assoc($sql))
{
echo'<img src="$row"/>';}
?>[/PHP]
اون کوئری بشه:
[PHP]
$sql = mysql_query("SELECT path FROM image WHERE id='1'");
[/PHP]+
اون WHILE بشه:
[PHP]
while($row = mysql_fetch_array($sql))
{
echo '<img src="'.$row['path'].'"/>';}
[/PHP]اگر نشد
[PHP]
['path']
[/PHP]رو از آخر تغییر پذیر row بردارید.
با این کد تصویر نشان داده نمیشود
[PHP]<?php
// connect to mysql server
$link = mysql_connect('localhost', 'root', '');
if (!$link) {
die('Not connected : ' . mysql_error());
}
// connect to database server
$db_selected = mysql_select_db('admin', $link);
if (!$db_selected) {
die ('Database error : ' . mysql_error());
}
$sql = mysql_query("SELECT 'path' FROM image id='1'");
$row= mysql_fetch_assoc($sql);
$image = $row['path'];
echo'<img src="$image"/>';
?>
[/PHP]