جدول داینامیک

سلام به همه خوش اومدم
ببینید من یه جدول ساختم که عکسها رو اینجوری از دیتابیس می خونه
PHP:
print("<table width=100% border=0 align=right cellpadding=2 cellspacing=2>
     <tr>
 
                    <td ><a href=gallup/".$picture['photo2']." rel=lightbox title=".$row['com1']." ><img src=gallup/".$picture['photo1']."></a></td>
         
                <td ><a href=gallup/".$picture['photo4']." rel=lightbox title=".$row['com2']." ><img src=gallup/".$picture['photo3']."></a></td>
                  
                <td ><a href=gallup/".$picture['photo6']." rel=lightbox title=".$row['com3']." ><img src=gallup/".$picture['photo5']."></a></td>
                 
                 <td ><a href=gallup/".$picture['photo8']." rel=lightbox title=".$row['com4']."><img src=gallup/".$picture['photo7']."></a></td>
اما اگه یه عکس مثلا photo 5 موجود نباشه صفحه به هم میریزه.
من میخوام بپرسم میشه یه جدول داشته باشیم که اگه مثلا photo5 موجود نبود جاش عکس بعدی رو سوار کنه و عکسها مرتب توی یه جول 4 تایی باشه؟؟؟
 

EMIRATES

Active Member
با سلام

نمیدونم این راه حل بهترینه یا نه ولی میدونم میشه.

میای آرایه هارو به متغیر تغییر میدی:

PHP:
<?

$2 = $picture['photo2'];
if (!$picture['photo2']) {
$s2 = $picture['photo3']
};

?>
دوستان دیگه اگه راه حل بهتری دارند بگن.

با تشکر.
 

firebird

Member
PHP:
$i = 0;
echo "<table>";
for ($i = 0; $i < $n; $i++) {
    if ($i % 4 == 0) echo "<tr>";
    echo "<td> .... </td>";
    if ($i % 4 == 3) echo "</tr>";
}
echo "</table>";
 

آیدین

Member
اصولن من با نحوه‌ی اجرای طرحت مشکل دارم.
شما میتونی تعداد td های جدولت رو متغیر بگیری.
اول از همه آمار کل عکسها رو از دیتابیس بریزی توی یک آرایه، بعد با تابع foreach شروع به تولید tdها کنی، قبل از ایجاد هر td هم وجود فایل رو از روی آدرسی که داری با تابع is_file چک کنی.
عکسهای بزرک و بند انگشتی رو هم به یک نام ولی در دو دایرکتوری مختلف نگه داری کنی بهتره. اگر یک عکس بندانگشتی نداشته باشه به کل از آلبوم حذف میشه...
 
سلام
منم دقیقا دنبال همچین چیزی میگردم
ولی اول نمی دونم چه جوری باید اطلاعات دیتابیس رو توی ارایه بریزم
دوم با foreach بلد نیستم کار کنم
 

آیدین

Member
منم دقیقا دنبال همچین چیزی میگردم
ولی اول نمی دونم چه جوری باید اطلاعات دیتابیس رو توی ارایه بریزم
دوم با foreach بلد نیستم کار کنم
اولن که لازم نیست اصلن چیزی رو توی دیتابیش بریزی.
من اول از همه یه کلاس نوشتم که یک فلدر رو برای عکس بندانگشتی جستجو کنه، تمام فایلها رو در یک آرایه قرار بده، بعد تک تک این عناصر آرایه رو در یک فلدر دیگه که مال تصویر بزرگه ججستجو کنه، اگر عکس‌ها در هردو فلدر بودند اونوقت عناصر دارای شرایط رو توی یه آرایه‌ی جدید بریزه.
پس این از ایده‌ی کار.
foreach: تک تک عناصر (و کلیدها) رو در یک (یا دو برای کلیدها) متغیر قرار میده و بلوک خاصی رو برای تک تک عناصر اجرا میکنه
PHP:
foreach($array as $value){
$newvalue[]=2*$value;
}
کار مشابهی رو میتونی با array_walk انجام بدی که تابعی رو بر روی تمام عناصر اجرا میکنه (تابع تعریف شده توسط کاربر نه php)
منبع: php.net
 

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

بالا