ساخت گالري

MRB COMPANY

Member
سلام به همه دوستان
مجبور شدم اين صفحه رو دوباره بزنم تا شايد بعضي ها كمك كنن
من مي خوام يه گالري طراحي كنم كه آدرس عكسها رو از ديتا بيس بخونه
ميشه يكي كمك كنه؟
ميشه يه مثال بزنيد.:rose:
 

آیدین

Member
فکر کنم شما بیشتر دوتا تاپیک هم در این مورد زدید، یا شاید من اشتباه میکنم
تو یه تاپیک دیگه توضیح دادم که برای ساخت گالری به دیتابیس نیازی نیست. شما اول باید یه کلاس یا تابع تعریف کنی که یک آدرس دایرکتوری رو بگیره و خروجیش یک آرایه حاوی لیست تمام تصاویر موجود در اون تابع باشه.
با کمی اختصار میشه اینطور نوشت:

PHP:
function get_images($dir){
    $contents=scandir($dir);
    foreach($contents as $item){
        if(is_file($item)){
            $files[]=$item;
        }
    }
}
اما ساختار دایرکتوری گالری
هر آلبوم باید یک دایرکتوری داشته باشه حاوی دوتا دایرکتوری دیگه. فلدر full و thumb که از اسمشون معلونه داخلش چیه.

کاری که ما میکنیم اینه که
۱. آدرس آلبوم رو میگیریم
۲. با تابع is_dir چک میکنیم که آیا ان دایرکتوری واقعن وجود داره یا نه. همین کار رو در باره‌ی دو فلدر full و thumb هم تکرار میکنیم.
۳. در صورت وجود دایرکتوری‌ها با تابع بالا لیست تمام فایلهای داخل فلدر thumb رو بدست میاریم و با تابع is_file چک میکنیم که آیا این فایلها در فلدر full هم وجود داره یا خیر.
۴. لیست فایلهایی که با یک نام در هر دو دایرکتوری هستن رو داخل یک آرایه میریزیم
۵. با یک حلقه‌ی foreach مثل زیر عکسها رو نمایش میدیم:

PHP:
foreach($list as $pic){
    //codes here!
}
کدهای بالا رو با خلاقیت خودت بسته به تکنیک طراحی‌ت بنویس
سوال: اینجا اصلن دیتابیس میخوایم برای چی؟ مگر اینکه بخوایم اطلاعات اضافه‌ای مثل توضیحات و تاریخ و اینها رو به هر گالری اضافه کنیم.
 

MRB COMPANY

Member
آيدين جان من فقط يه تاپيك زدم اونم دقيقا برعكس گفته شماست
الانم چيزي كه مي خوام اينه كه از ديتا بيس بخونه نه از پوشه.
مشكلمم
اينه كه وقتي گالري آدرس عكسهارو از ديتا بيس فرا خواني مي كنه و نمايش ميده همش رو توي يه خط نشون ميده
من مي خوام عكسهارو داخل تيبل نشون بده
همين!
اين رو بلد نيستم
 

MRB COMPANY

Member
aminoia من كه با ie مشكل ندارم
اصلا كسي اينجا اسكريپتي داره كه از داخل ديتا بيس عكس هارو نشون بده؟
اگه ميشه يه بزاريد.
 

aminoia

Member
من هم نگفتم که با IE مشکل داری
ولی اگه اون بحث رو کامل بخونی یه چیزهایی دستت میاد :cool:
PHP:
<?PHP

$sql=mysql_query("select * from gallery");
echo '<table width="100%" border="0" align="right" cellpadding="2" cellspacing="2">';
while($row = mysql_fetch_array($sql)){
echo '<tr>'
.'<td width="150" height="150"><a href="gallup/'
.$row['photo2']
.'" rel="lightbox" ><img src="gallup/'
.$row['photo1']
.'" ></a></td>'
.'<td width="150" height="150"><a href="gallup/'
.$row['photo4']
.'" rel="lightbox" ><img src="gallup/'
.$row['photo3']
.'" ></a></td>'
.'<td width="150" height="150"><a href="gallup/'
.$row['photo6']
.'" rel="lightbox" ><img src="gallup/'
.$row['photo5']
.'" ></a></td>'
.'<td width="150" height="150"><a href="gallup/'
.$row['photo8']
.'" rel="lightbox" ><img src="gallup/'
.$row['photo7']
.'" ></a></td>'
.'<tr>';
}
echo '</table>';
?>
این یه گالری تصویره
با حلقه جدول ایجاد می کنه
 

aminoia

Member
این هم یه کد دیگه که امیدوارم به درکت از این مساله کمک کنه
ایجاد جدل ضرب از 1 تا 9
PHP:
<?PHP
echo '<table border="1">';
for($i=1; $i<10; $i++){
 echo '<tr>';
 for($j=0; $j<9; $j++){
  echo '<td>';
  echo ($i*$j);
  echo '</td>';
 }
 echo '</tr>';
}
echo '</tble>';
?>
 

MRB COMPANY

Member
دوستان ممنون
من با كمكتون اين كد رو نوشتم
مي ذارم اينجا شايد كسي باشه مثل خودم كه نياز داشته باشه
بين قابهاي # Start Script
تا # End Script
بايد كد خودتون رو كه مثلا نمايش عكس هستش رو بزاريد.

PHP:
<?php
$hostname_Fibo_Net = "Localhost";
$database_Fibo_Net = "gallery";
$username_Fibo_Net = "root";
$password_Fibo_Net = "";
$Fibo_Net = mysql_pconnect($hostname_Fibo_Net, $username_Fibo_Net, $password_Fibo_Net) or trigger_error(mysql_error(),E_USER_ERROR); 


mysql_select_db($database_Fibo_Net, $Fibo_Net);
$query= "SELECT * FROM catin ORDER BY id ASC";
$query_send = mysql_query($query, $Fibo_Net) or die(mysql_error());
$line = mysql_fetch_assoc($query_send);

#Num Of rows
$numtd=2;

$numtdi=1;
echo "<table border=\"1\">\n";
do {

if ($numtdi==1){echo "\t<tr>\n";}
# Start Script
echo "\t\t<td>";

echo $line['id'];

echo "</td>\n";
# End Script
$fin=0;
if ($numtdi==$numtd){echo "\t</tr>\n";$numtdi=0;$fin=1;}
$numtdi++;

} while ($line = mysql_fetch_assoc($query_send)) ;
if (!$fin){echo "\t</tr>\n";}
echo "</table>\n";
?>
 

جدیدترین ارسال ها

بالا