PDA

View Full Version : کمک در مورد دیتابیس (مبندی)



netmaster.m
سه شنبه 15 اردیبهشت 1394, 22:55 عصر
سلام خسته نباشید
میدونم سوالم خیلی مبتدی هست ولی چون چند جا کدها را خوندم و گیج شدم از شما میپرسم:

من یک دیتابیس ایجاد کردم که میخام یه سری عکس داخل اون بریزم و بخوانم، چیزی که فهمیدم اینه که باید ادرس عکس ها را بدم تا حجم دیتابیس بالا نره!

درج
من عکس ها در فولدری به نام " pictures " در روت هاست اپلود کردم و آمادست
اگر فرض کنیم جدول من دو تا ستون داره یکی id و دیگری address :
1- من باید در قسمت address هر ردیف چه بنویسم تا جدول لینک بشه به ادرس مورد نظر عکس ( مثلا : image.jpg و ریفهای بعدی و عکسشون)
2 -نوع متغیر آدرس را باید چی انتخاب کنم؟

خواندن:
اگر کاربر بخواد رندوم هر دفعه یکی از عکسها را نمایش بده باید چه کدی در فایل php بزنم ( کدهای مربوط به اتصال دیتابیس و چک کردن آن را بلدم ، فقط کد مربوط به ارسال تصویر به کاربر به صورت رندوم را میخام )


سپاسگزارم

ikallam
سه شنبه 15 اردیبهشت 1394, 23:59 عصر
سلام اگه مسیر فایلت طولانی نباشه varchar فکر کنم خوب باشه تا 255 کاراکتر
برای رندوم: اول تعداد رکورد های داخل دیتا بیس رو به دست بیار که چند تا هستن از count استفاده کن
بعد با تابع rand یک عدد تصادفی از یک تا اون عدد به دست اوردی (تعداد رکورد ها ی جدولت) بساز حالا هر کدوم از اون رکوردهای که id اش با عدد تابع rand برابر بود عکس رو نشون کاربر بده

imohammad
چهارشنبه 16 اردیبهشت 1394, 00:00 صبح
آدرس رو میخونی توی تگ html قرار میدی
باید آدرس عکس رو دیسک رو ذخیره کنی نوعش رو هم text بزار

netmaster.m
چهارشنبه 16 اردیبهشت 1394, 02:03 صبح
سلام اگه مسیر فایلت طولانی نباشه varchar فکر کنم خوب باشه تا 255 کاراکتر
برای رندوم: اول تعداد رکورد های داخل دیتا بیس رو به دست بیار که چند تا هستن از count استفاده کن
بعد با تابع rand یک عدد تصادفی از یک تا اون عدد به دست اوردی (تعداد رکورد ها ی جدولت) بساز حالا هر کدوم از اون رکوردهای که id اش با عدد تابع rand برابر بود عکس رو نشون کاربر بده

آدرس رو میخونی توی تگ html قرار میدی
باید آدرس عکس رو دیسک رو ذخیره کنی نوعش رو هم text بزار


خب من کلا سه تا سوال داشتم:

سوال 1 در مورد آدرس بود چطور ذخیره کنم ؟ منظور شما به این صورت
<img alt="" src="http://mysite.com/pictures/image.jpg" />بود؟


سوال 2 این بود که متغیر باید چی باشه که ظاهرا میتونه varchar و یا text باشه؟ درسته؟

سوال سوم هم لطفا کد زیر را تکمیل و یا ویرایش کنید و خروجی نهایی را اطلاع بدید ( کد json را ازجایی خوندم ، خروجی من هم باید به صورت json باشه چون بعدا برای یه کد دیگه بهش نیاز دارم )


<?php

$con = mysql_coonect("mysite" , "userbane" , "password");
mysql_select_db("database" , $con);

$sqlq = "select * from tblax";
$result = mysql_Query(sqlq);

$json_response = array();

while ($row = mysql_fetch_array($result)){
$row_array['id'] = $row['id'];
$row_array['ax'] = $row['ax'];

array_push($json_response,$row_array);
}

$a = rand(1,10);
if (id == $a){
echo ...............


?>

لطفا به ترتیب سوالات را پاسخ بدید
خیلی خیلی ممنون

MMSHFE
چهارشنبه 16 اردیبهشت 1394, 12:19 عصر
1- اگه مسیر همه عکسها یکجاست، فقط اسم فایل (image.jpg) رو ذخیره کنید و موقع نمایش آدرس و مسیر رو بهش اضافه کنید.
2- نوع varchar با حداکثر طول 255 کارکتر معمولاً مناسبه و نیازی به استفاده از text نیست.
3- تاپیک جداگانه ایجاد کنید. توی هر تاپیک بیش از 1 سؤال نپرسید.

netmaster.m
چهارشنبه 16 اردیبهشت 1394, 13:25 عصر
1- اگه مسیر همه عکسها یکجاست، فقط اسم فایل (image.jpg) رو ذخیره کنید و موقع نمایش آدرس و مسیر رو بهش اضافه کنید.
2- نوع varchar با حداکثر طول 255 کارکتر معمولاً مناسبه و نیازی به استفاده از text نیست.
3- تاپیک جداگانه ایجاد کنید. توی هر تاپیک بیش از 1 سؤال نپرسید.

ممنون از راهنماییتون
چون مرتبط بودند چند سوال کردم، لطف میکنید سوال سوم هم جواب بدید؟

MMSHFE
چهارشنبه 16 اردیبهشت 1394, 14:24 عصر
والا من که ارتباطی بین سؤال سوم و موضوع تاپیک نمیبینم. بهرصورت PHP دو تابع به نامهای json_encode و json_decode داره که به ترتیب میتونن یک آرایه رو به JSON و یا یک متن با فرمت JSON رو به آرایه تبدیل کنن.