PDA

View Full Version : سوال در مورد اسمارتی و mysql



persian-boy
شنبه 06 خرداد 1391, 23:52 عصر
سلام دوستان

من با یک حلقه مقادیر رو میریزم داخل یک آرایه بعد اون رو نمایش میدم

while ($row = mysql_fetch_assoc($result)) {

$line[] = $row;
}

و بعد با اسمارتی نمایشش میدم .



$smarty->assign('line',$line);


حالا یه مشکلی هست ، مثلا من میخوام تغییری در فیلد ها گرفته شده از mysql بدم و بعد نمایش بدم . مثلا timestamp رو با ساختار مورد نظر خودم به تاریخ شمسی تبدیل کنم و بعد نمایش بدم .

راه حل چیست ؟

persian-boy
یک شنبه 07 خرداد 1391, 10:25 صبح
راهی نیست ؟

persian-boy
یک شنبه 07 خرداد 1391, 20:19 عصر
من اینترنت رو گشتم ولی بقیه هم از این روش استفاده میکنن تا اونجایی که من دیدم

farhadfery
یک شنبه 07 خرداد 1391, 23:35 عصر
تا حد ممکن : تو view سعی کن فقط نمایش باشه و در اکشنی که دارای اون متغییرهای timestmp و image , ... که باید دستکاری بشوند اماده کن.

persian-boy
دوشنبه 08 خرداد 1391, 00:49 صبح
ممنون فرهاد جان ، اگر منظورتون این هست که به صورت شمسی وارد دیتابیس بکنم قبل از نمایش ، متاسفانه قدرت مانور میاد پایین .

راه دیگه ای سراغ ندارید ؟

farhadfery
دوشنبه 08 خرداد 1391, 01:08 صبح
ممنون فرهاد جان ، اگر منظورتون این هست که به صورت شمسی وارد دیتابیس بکنم قبل از نمایش ، متاسفانه قدرت مانور میاد پایین .

راه دیگه ای سراغ ندارید ؟
اشتباه متوجه شدید.
می گم قبل از assaign کردن داده های نمایش را اماده کن و تو view فقط نمایش بده. البته در مورد تاریخ کار بهتر اینکه تو ویو اینکار انجام بشه که نیاز به یه هلپر دارید.

persian-boy
دوشنبه 08 خرداد 1391, 19:54 عصر
همین دیگه ، مشکل همینه فرهاد عزیز

داخل حلقه ای که دارم چطور باید قبل از assign این کار رو انجام بدم ؟

MMSHFE
دوشنبه 08 خرداد 1391, 21:20 عصر
مثال:


while ($row = mysql_fetch_assoc($result)) {
$row['dt'] = jdate('Y/m/d', $row['dt']);
$line[] = $row;
}

Keramatifar
دوشنبه 08 خرداد 1391, 22:22 عصر
دوست عزیز
می تونید یک همچین کدی به بدنه حلقه اضافه کنید


$line['formatedDate'] = date('Y/m/d' , $row['YourDateField'])

persian-boy
سه شنبه 09 خرداد 1391, 11:13 صبح
با تشکر از دو استاد عزیزم آقای MMSHFE و آقای Mr.Keramati

دقیقا مشکل من همین بود و خیلی راحت با توجه به توضیحات شما حل شد .

سپاسگذارم